@salesforce/afv-skills 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/activating-datacloud/CREDITS.md +5 -0
- package/skills/activating-datacloud/README.md +39 -0
- package/skills/activating-datacloud/SKILL.md +118 -0
- package/skills/analyzing-omnistudio-dependencies/CREDITS.md +5 -0
- package/skills/analyzing-omnistudio-dependencies/SKILL.md +477 -0
- package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +508 -0
- package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +300 -0
- package/skills/building-omnistudio-callable-apex/CREDITS.md +9 -0
- package/skills/building-omnistudio-callable-apex/README.md +80 -0
- package/skills/building-omnistudio-callable-apex/SKILL.md +276 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +40 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +32 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +54 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +45 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +65 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +115 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +189 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +115 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +74 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +146 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +16 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +120 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +73 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +128 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +23 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +75 -0
- package/skills/building-omnistudio-datamapper/CREDITS.md +5 -0
- package/skills/building-omnistudio-datamapper/SKILL.md +270 -0
- package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +28 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +6 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +12 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +6 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +6 -0
- package/skills/building-omnistudio-datamapper/references/best-practices.md +277 -0
- package/skills/building-omnistudio-datamapper/references/naming-conventions.md +145 -0
- package/skills/building-omnistudio-flexcard/CREDITS.md +5 -0
- package/skills/building-omnistudio-flexcard/SKILL.md +325 -0
- package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +10 -0
- package/skills/building-omnistudio-flexcard/references/best-practices.md +291 -0
- package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +311 -0
- package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +66 -0
- package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +24 -0
- package/skills/building-omnistudio-integration-procedure/CREDITS.md +5 -0
- package/skills/building-omnistudio-integration-procedure/SKILL.md +275 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +10 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +10 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +12 -0
- package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +14 -0
- package/skills/building-omnistudio-integration-procedure/references/best-practices.md +388 -0
- package/skills/building-omnistudio-integration-procedure/references/element-types.md +588 -0
- package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +18 -0
- package/skills/building-omnistudio-omniscript/CREDITS.md +5 -0
- package/skills/building-omnistudio-omniscript/SKILL.md +367 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +10 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +11 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +12 -0
- package/skills/building-omnistudio-omniscript/references/best-practices.md +480 -0
- package/skills/building-omnistudio-omniscript/references/element-types.md +1172 -0
- package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +13 -0
- package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +21 -0
- package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +29 -0
- package/skills/building-sf-integrations/CREDITS.md +5 -0
- package/skills/building-sf-integrations/README.md +95 -0
- package/skills/building-sf-integrations/SKILL.md +192 -0
- package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +167 -0
- package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +257 -0
- package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +262 -0
- package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +211 -0
- package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +246 -0
- package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +139 -0
- package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +58 -0
- package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +39 -0
- package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +90 -0
- package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +87 -0
- package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +221 -0
- package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +193 -0
- package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +62 -0
- package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +71 -0
- package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +51 -0
- package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +67 -0
- package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +191 -0
- package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +295 -0
- package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +108 -0
- package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +124 -0
- package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +186 -0
- package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +213 -0
- package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +271 -0
- package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +363 -0
- package/skills/building-sf-integrations/references/callout-patterns.md +719 -0
- package/skills/building-sf-integrations/references/cdc-guide.md +288 -0
- package/skills/building-sf-integrations/references/cli-reference.md +94 -0
- package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +266 -0
- package/skills/building-sf-integrations/references/event-patterns.md +838 -0
- package/skills/building-sf-integrations/references/external-services-guide.md +303 -0
- package/skills/building-sf-integrations/references/messaging-api-v2.md +609 -0
- package/skills/building-sf-integrations/references/named-credentials-automation.md +201 -0
- package/skills/building-sf-integrations/references/named-credentials-guide.md +173 -0
- package/skills/building-sf-integrations/references/platform-events-guide.md +288 -0
- package/skills/building-sf-integrations/references/rest-callout-patterns.md +288 -0
- package/skills/building-sf-integrations/references/scoring-rubric.md +59 -0
- package/skills/building-sf-integrations/references/security-best-practices.md +248 -0
- package/skills/building-sf-integrations/scripts/README.md +100 -0
- package/skills/building-sf-integrations/scripts/configure-named-credential.sh +236 -0
- package/skills/building-sf-integrations/scripts/set-api-credential.sh +146 -0
- package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +158 -0
- package/skills/configuring-connected-apps/CREDITS.md +3 -0
- package/skills/configuring-connected-apps/README.md +99 -0
- package/skills/configuring-connected-apps/SKILL.md +224 -0
- package/skills/configuring-connected-apps/assets/connected-app-basic.xml +29 -0
- package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +62 -0
- package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +49 -0
- package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +65 -0
- package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +36 -0
- package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +36 -0
- package/skills/configuring-connected-apps/assets/eca-policies.xml +36 -0
- package/skills/configuring-connected-apps/assets/external-client-app.xml +35 -0
- package/skills/configuring-connected-apps/references/example-usage.md +256 -0
- package/skills/configuring-connected-apps/references/migration-guide.md +328 -0
- package/skills/configuring-connected-apps/references/oauth-flows-reference.md +660 -0
- package/skills/configuring-connected-apps/references/security-checklist.md +209 -0
- package/skills/configuring-connected-apps/references/testing-validation-guide.md +275 -0
- package/skills/connecting-datacloud/CREDITS.md +5 -0
- package/skills/connecting-datacloud/README.md +59 -0
- package/skills/connecting-datacloud/SKILL.md +155 -0
- package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +15 -0
- package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +5 -0
- package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +31 -0
- package/skills/connecting-datacloud/examples/connections/redshift.json +16 -0
- package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +20 -0
- package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +42 -0
- package/skills/debugging-apex-logs/CREDITS.md +22 -0
- package/skills/debugging-apex-logs/README.md +74 -0
- package/skills/debugging-apex-logs/SKILL.md +172 -0
- package/skills/debugging-apex-logs/assets/benchmarking-template.cls +327 -0
- package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +307 -0
- package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +219 -0
- package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +252 -0
- package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +157 -0
- package/skills/debugging-apex-logs/references/analysis-playbook.md +53 -0
- package/skills/debugging-apex-logs/references/benchmarking-guide.md +287 -0
- package/skills/debugging-apex-logs/references/cli-commands.md +368 -0
- package/skills/debugging-apex-logs/references/common-issues.md +68 -0
- package/skills/debugging-apex-logs/references/debug-log-reference.md +328 -0
- package/skills/debugging-apex-logs/references/log-analysis-tools.md +248 -0
- package/skills/debugging-apex-logs/references/scoring-rubric.md +21 -0
- package/skills/deploying-metadata/CREDITS.md +25 -0
- package/skills/deploying-metadata/README.md +104 -0
- package/skills/deploying-metadata/SKILL.md +214 -0
- package/skills/deploying-metadata/assets/destructiveChanges.xml +143 -0
- package/skills/deploying-metadata/assets/package.xml +121 -0
- package/skills/deploying-metadata/references/agent-deployment-guide.md +628 -0
- package/skills/deploying-metadata/references/deploy.sh +73 -0
- package/skills/deploying-metadata/references/deployment-report-template.md +89 -0
- package/skills/deploying-metadata/references/deployment-workflows.md +395 -0
- package/skills/deploying-metadata/references/orchestration.md +183 -0
- package/skills/deploying-metadata/references/trigger-deployment-safety.md +376 -0
- package/skills/deploying-omnistudio-datapacks/CREDITS.md +5 -0
- package/skills/deploying-omnistudio-datapacks/README.md +88 -0
- package/skills/deploying-omnistudio-datapacks/SKILL.md +174 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +124 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +11 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +142 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +10 -0
- package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +42 -0
- package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +24 -0
- package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +1 -1
- package/skills/developing-agentforce/references/actions-reference.md +8 -8
- package/skills/fetching-salesforce-docs/README.md +66 -0
- package/skills/fetching-salesforce-docs/SKILL.md +209 -0
- package/skills/fetching-salesforce-docs/requirements.txt +2 -0
- package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +497 -0
- package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +357 -0
- package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +58 -0
- package/skills/generating-apex/CREDITS.md +1 -26
- package/skills/generating-apex-test/CREDITS.md +2 -27
- package/skills/generating-lwc-components/CREDITS.md +5 -0
- package/skills/generating-lwc-components/README.md +126 -0
- package/skills/generating-lwc-components/SKILL.md +191 -0
- package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +327 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +72 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +111 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +163 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +137 -0
- package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +111 -0
- package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +367 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +63 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +154 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +348 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +87 -0
- package/skills/generating-lwc-components/assets/form-component/formComponent.html +165 -0
- package/skills/generating-lwc-components/assets/form-component/formComponent.js +275 -0
- package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +100 -0
- package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +336 -0
- package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +371 -0
- package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +71 -0
- package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +103 -0
- package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +181 -0
- package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +85 -0
- package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +199 -0
- package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +55 -0
- package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +199 -0
- package/skills/generating-lwc-components/assets/state-store/store.js +282 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +65 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +95 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +75 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +301 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +295 -0
- package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +71 -0
- package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +316 -0
- package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +295 -0
- package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +347 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +74 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +111 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +127 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +294 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +22 -0
- package/skills/generating-lwc-components/hooks/scripts/template_validator.py +332 -0
- package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +595 -0
- package/skills/generating-lwc-components/references/accessibility-guide.md +843 -0
- package/skills/generating-lwc-components/references/advanced-features.md +108 -0
- package/skills/generating-lwc-components/references/async-notification-patterns.md +661 -0
- package/skills/generating-lwc-components/references/cli-commands.md +545 -0
- package/skills/generating-lwc-components/references/component-patterns.md +1476 -0
- package/skills/generating-lwc-components/references/flow-integration-guide.md +675 -0
- package/skills/generating-lwc-components/references/jest-testing.md +1011 -0
- package/skills/generating-lwc-components/references/lms-guide.md +860 -0
- package/skills/generating-lwc-components/references/lwc-best-practices.md +1310 -0
- package/skills/generating-lwc-components/references/performance-guide.md +861 -0
- package/skills/generating-lwc-components/references/scoring-and-testing.md +116 -0
- package/skills/generating-lwc-components/references/slds-blueprints.json +14389 -0
- package/skills/generating-lwc-components/references/slds-design-guide.md +166 -0
- package/skills/generating-lwc-components/references/state-management.md +642 -0
- package/skills/generating-lwc-components/references/template-anti-patterns.md +948 -0
- package/skills/generating-lwc-components/references/triangle-pattern.md +365 -0
- package/skills/generating-lwc-components/scripts/local-dev-preview.sh +34 -0
- package/skills/generating-mermaid-diagrams/CREDITS.md +46 -0
- package/skills/generating-mermaid-diagrams/README.md +114 -0
- package/skills/generating-mermaid-diagrams/SKILL.md +218 -0
- package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +313 -0
- package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +351 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +317 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +195 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +262 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +266 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +261 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +332 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +237 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +277 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +343 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +192 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +209 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +276 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +217 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +241 -0
- package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +387 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +197 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +152 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +233 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +295 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +256 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +281 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +281 -0
- package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +322 -0
- package/skills/generating-mermaid-diagrams/references/color-palette.md +464 -0
- package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +313 -0
- package/skills/generating-mermaid-diagrams/references/erd-conventions.md +320 -0
- package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +434 -0
- package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +81 -0
- package/skills/generating-mermaid-diagrams/references/preview-guide.md +49 -0
- package/skills/generating-mermaid-diagrams/references/usage-examples.md +340 -0
- package/skills/generating-mermaid-diagrams/scripts/README.md +160 -0
- package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +654 -0
- package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +293 -0
- package/skills/generating-visual-diagrams/CREDITS.md +80 -0
- package/skills/generating-visual-diagrams/README.md +83 -0
- package/skills/generating-visual-diagrams/SKILL.md +208 -0
- package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +55 -0
- package/skills/generating-visual-diagrams/assets/erd/core-objects.md +131 -0
- package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +60 -0
- package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +45 -0
- package/skills/generating-visual-diagrams/assets/lwc/data-table.md +57 -0
- package/skills/generating-visual-diagrams/assets/lwc/record-form.md +60 -0
- package/skills/generating-visual-diagrams/assets/review/apex-review.md +57 -0
- package/skills/generating-visual-diagrams/assets/review/lwc-review.md +48 -0
- package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +257 -0
- package/skills/generating-visual-diagrams/references/examples-index.md +35 -0
- package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +65 -0
- package/skills/generating-visual-diagrams/references/interview-questions.md +529 -0
- package/skills/generating-visual-diagrams/references/iteration-workflow.md +173 -0
- package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +101 -0
- package/skills/generating-visual-diagrams/scripts/generate_image.py +243 -0
- package/skills/handling-sf-data/CREDITS.md +5 -0
- package/skills/handling-sf-data/README.md +112 -0
- package/skills/handling-sf-data/SKILL.md +235 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +293 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +208 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +219 -0
- package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +324 -0
- package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +319 -0
- package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +240 -0
- package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +311 -0
- package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +266 -0
- package/skills/handling-sf-data/assets/csv/account-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/contact-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/custom-object-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/opportunity-import.csv +11 -0
- package/skills/handling-sf-data/assets/factories/account-factory.apex +165 -0
- package/skills/handling-sf-data/assets/factories/case-factory.apex +237 -0
- package/skills/handling-sf-data/assets/factories/contact-factory.apex +168 -0
- package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +260 -0
- package/skills/handling-sf-data/assets/factories/event-factory.apex +275 -0
- package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +372 -0
- package/skills/handling-sf-data/assets/factories/lead-factory.apex +190 -0
- package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +206 -0
- package/skills/handling-sf-data/assets/factories/task-factory.apex +246 -0
- package/skills/handling-sf-data/assets/factories/user-factory.apex +278 -0
- package/skills/handling-sf-data/assets/json/account-contact-tree.json +130 -0
- package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +110 -0
- package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +188 -0
- package/skills/handling-sf-data/assets/soql/aggregate.soql +226 -0
- package/skills/handling-sf-data/assets/soql/child-to-parent.soql +162 -0
- package/skills/handling-sf-data/assets/soql/parent-to-child.soql +153 -0
- package/skills/handling-sf-data/assets/soql/polymorphic.soql +198 -0
- package/skills/handling-sf-data/assets/soql/subquery.soql +287 -0
- package/skills/handling-sf-data/references/anonymous-apex-guide.md +98 -0
- package/skills/handling-sf-data/references/bulk-operations-guide.md +94 -0
- package/skills/handling-sf-data/references/bulk-testing-example.md +194 -0
- package/skills/handling-sf-data/references/cleanup-rollback-example.md +322 -0
- package/skills/handling-sf-data/references/cleanup-rollback-guide.md +84 -0
- package/skills/handling-sf-data/references/crud-workflow-example.md +183 -0
- package/skills/handling-sf-data/references/governor-limits-reference.md +74 -0
- package/skills/handling-sf-data/references/orchestration.md +174 -0
- package/skills/handling-sf-data/references/relationship-query-examples.md +249 -0
- package/skills/handling-sf-data/references/sf-cli-data-commands.md +158 -0
- package/skills/handling-sf-data/references/soql-relationship-guide.md +84 -0
- package/skills/handling-sf-data/references/test-data-best-practices.md +104 -0
- package/skills/handling-sf-data/references/test-data-factory-usage.md +290 -0
- package/skills/handling-sf-data/references/test-data-patterns.md +98 -0
- package/skills/handling-sf-data/scripts/soql_validator.py +292 -0
- package/skills/handling-sf-data/scripts/validate_data_operation.py +379 -0
- package/skills/harmonizing-datacloud/CREDITS.md +3 -0
- package/skills/harmonizing-datacloud/README.md +31 -0
- package/skills/harmonizing-datacloud/SKILL.md +117 -0
- package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +14 -0
- package/skills/modeling-omnistudio-epc-catalog/README.md +89 -0
- package/skills/modeling-omnistudio-epc-catalog/SKILL.md +395 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +402 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +43 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +8 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +233 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +514 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +21 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +649 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +200 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +266 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +23 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +34 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +21 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +410 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +535 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +23 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +220 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +414 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +382 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +565 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +104 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +13 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +106 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +72 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +142 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +377 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +36 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +8 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +34 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +134 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +29 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +158 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +338 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +527 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +95 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +214 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +98 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +22 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +13 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +110 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +58 -0
- package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +90 -0
- package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +80 -0
- package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +57 -0
- package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +19 -0
- package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +18 -0
- package/skills/orchestrating-datacloud/CREDITS.md +15 -0
- package/skills/orchestrating-datacloud/README.md +129 -0
- package/skills/orchestrating-datacloud/SKILL.md +236 -0
- package/skills/orchestrating-datacloud/UPSTREAM.md +45 -0
- package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +7 -0
- package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +7 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +21 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +55 -0
- package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +17 -0
- package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +30 -0
- package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +14 -0
- package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +12 -0
- package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +9 -0
- package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +16 -0
- package/skills/orchestrating-datacloud/references/feature-readiness.md +157 -0
- package/skills/orchestrating-datacloud/references/plugin-setup.md +140 -0
- package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +53 -0
- package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +511 -0
- package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +68 -0
- package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +58 -0
- package/skills/preparing-datacloud/CREDITS.md +7 -0
- package/skills/preparing-datacloud/README.md +51 -0
- package/skills/preparing-datacloud/SKILL.md +191 -0
- package/skills/preparing-datacloud/examples/ingestion-api/.env.example +8 -0
- package/skills/preparing-datacloud/examples/ingestion-api/README.md +48 -0
- package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +144 -0
- package/skills/querying-soql/CREDITS.md +21 -0
- package/skills/querying-soql/README.md +41 -0
- package/skills/querying-soql/SKILL.md +143 -0
- package/skills/querying-soql/assets/aggregate-queries.soql +242 -0
- package/skills/querying-soql/assets/basic-queries.soql +188 -0
- package/skills/querying-soql/assets/bulkified-query-pattern.cls +280 -0
- package/skills/querying-soql/assets/optimization-patterns.soql +259 -0
- package/skills/querying-soql/assets/relationship-queries.soql +203 -0
- package/skills/querying-soql/assets/selector-class.cls +219 -0
- package/skills/querying-soql/references/anti-patterns.md +348 -0
- package/skills/querying-soql/references/cli-commands.md +358 -0
- package/skills/querying-soql/references/field-coverage-rules.md +514 -0
- package/skills/querying-soql/references/query-optimization.md +142 -0
- package/skills/querying-soql/references/selector-patterns.md +479 -0
- package/skills/querying-soql/references/soql-reference.md +227 -0
- package/skills/querying-soql/references/soql-syntax-reference.md +208 -0
- package/skills/querying-soql/scripts/post-tool-validate.py +322 -0
- package/skills/retrieving-datacloud/CREDITS.md +7 -0
- package/skills/retrieving-datacloud/README.md +44 -0
- package/skills/retrieving-datacloud/SKILL.md +120 -0
- package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +44 -0
- package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +43 -0
- package/skills/running-apex-tests/CREDITS.md +22 -0
- package/skills/running-apex-tests/README.md +94 -0
- package/skills/running-apex-tests/SKILL.md +158 -0
- package/skills/running-apex-tests/assets/basic-test.cls +169 -0
- package/skills/running-apex-tests/assets/bulk-test.cls +255 -0
- package/skills/running-apex-tests/assets/dml-mock.cls +339 -0
- package/skills/running-apex-tests/assets/mock-callout-test.cls +353 -0
- package/skills/running-apex-tests/assets/stub-provider-example.cls +364 -0
- package/skills/running-apex-tests/assets/test-data-factory.cls +328 -0
- package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +364 -0
- package/skills/running-apex-tests/references/cli-commands.md +289 -0
- package/skills/running-apex-tests/references/mocking-patterns.md +500 -0
- package/skills/running-apex-tests/references/performance-optimization.md +283 -0
- package/skills/running-apex-tests/references/test-fix-loop.md +49 -0
- package/skills/running-apex-tests/references/test-patterns.md +154 -0
- package/skills/running-apex-tests/references/testing-best-practices.md +509 -0
- package/skills/segmenting-datacloud/CREDITS.md +3 -0
- package/skills/segmenting-datacloud/README.md +36 -0
- package/skills/segmenting-datacloud/SKILL.md +115 -0
|
@@ -0,0 +1,588 @@
|
|
|
1
|
+
<!-- Parent: building-omnistudio-integration-procedure/SKILL.md -->
|
|
2
|
+
|
|
3
|
+
# Integration Procedure Element Types Reference
|
|
4
|
+
|
|
5
|
+
> **Version**: 1.0.0
|
|
6
|
+
> **Applies to**: OmniStudio Integration Procedures (Core namespace and Vlocity managed package)
|
|
7
|
+
|
|
8
|
+
This reference documents every element type available in Integration Procedures, including PropertySetConfig JSON structures, input/output node mapping, and variable scoping rules.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Table of Contents
|
|
13
|
+
|
|
14
|
+
1. [DataRaptor Extract Action](#1-dataraptor-extract-action)
|
|
15
|
+
2. [DataRaptor Load Action](#2-dataraptor-load-action)
|
|
16
|
+
3. [DataRaptor Transform Action](#3-dataraptor-transform-action)
|
|
17
|
+
4. [Remote Action](#4-remote-action)
|
|
18
|
+
5. [Integration Procedure Action](#5-integration-procedure-action)
|
|
19
|
+
6. [HTTP Action](#6-http-action)
|
|
20
|
+
7. [Conditional Block](#7-conditional-block)
|
|
21
|
+
8. [Loop Block](#8-loop-block)
|
|
22
|
+
9. [Set Values](#9-set-values)
|
|
23
|
+
10. [Variable Scoping and Data Passing](#10-variable-scoping-and-data-passing)
|
|
24
|
+
11. [PropertySetConfig Common Properties](#11-propertysetconfig-common-properties)
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 1. DataRaptor Extract Action
|
|
29
|
+
|
|
30
|
+
Reads data from Salesforce objects using a DataRaptor (Data Mapper) Extract definition.
|
|
31
|
+
|
|
32
|
+
### PropertySetConfig
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"bundle": "DRExtract_AccountDetails",
|
|
37
|
+
"disableFlushCacheForGet": false,
|
|
38
|
+
"useQueueableApexRemoting": false,
|
|
39
|
+
"additionalInput": {},
|
|
40
|
+
"additionalOutput": {},
|
|
41
|
+
"sendOnlyAdditionalInput": false,
|
|
42
|
+
"responseJSONPath": "",
|
|
43
|
+
"responseJSONNode": ""
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Key Properties
|
|
48
|
+
|
|
49
|
+
| Property | Type | Required | Description |
|
|
50
|
+
|----------|------|----------|-------------|
|
|
51
|
+
| `bundle` | String | Yes | Name of the DataRaptor Extract definition |
|
|
52
|
+
| `additionalInput` | Object | No | Extra key-value pairs merged into the DataRaptor input |
|
|
53
|
+
| `sendOnlyAdditionalInput` | Boolean | No | If true, only sends `additionalInput`, ignoring upstream data |
|
|
54
|
+
| `responseJSONPath` | String | No | JSONPath expression to extract a subset of the response |
|
|
55
|
+
| `responseJSONNode` | String | No | Key name to wrap the response under |
|
|
56
|
+
| `disableFlushCacheForGet` | Boolean | No | If true, uses cached DataRaptor results |
|
|
57
|
+
|
|
58
|
+
### Input Mapping
|
|
59
|
+
|
|
60
|
+
The element receives the IP's current data context. To pass specific values to the DataRaptor:
|
|
61
|
+
|
|
62
|
+
- Use `additionalInput` to map values from upstream elements:
|
|
63
|
+
```json
|
|
64
|
+
{
|
|
65
|
+
"additionalInput": {
|
|
66
|
+
"AccountId": "%PreviousElement:accountId%"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Output
|
|
72
|
+
|
|
73
|
+
The DataRaptor's output is stored under the element name in the IP response:
|
|
74
|
+
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"GetAccountDetails": {
|
|
78
|
+
"Name": "Acme Corp",
|
|
79
|
+
"Industry": "Technology",
|
|
80
|
+
"BillingCity": "San Francisco"
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
For multi-record results, the output is an array.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## 2. DataRaptor Load Action
|
|
90
|
+
|
|
91
|
+
Writes data to Salesforce objects using a DataRaptor (Data Mapper) Load definition.
|
|
92
|
+
|
|
93
|
+
### PropertySetConfig
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"bundle": "DRLoad_CreateContact",
|
|
98
|
+
"disableFlushCacheForGet": false,
|
|
99
|
+
"useQueueableApexRemoting": false,
|
|
100
|
+
"additionalInput": {},
|
|
101
|
+
"additionalOutput": {},
|
|
102
|
+
"sendOnlyAdditionalInput": false,
|
|
103
|
+
"responseJSONPath": "",
|
|
104
|
+
"responseJSONNode": ""
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Key Properties
|
|
109
|
+
|
|
110
|
+
| Property | Type | Required | Description |
|
|
111
|
+
|----------|------|----------|-------------|
|
|
112
|
+
| `bundle` | String | Yes | Name of the DataRaptor Load definition |
|
|
113
|
+
| `additionalInput` | Object | No | Extra key-value pairs merged into the DataRaptor input |
|
|
114
|
+
| `sendOnlyAdditionalInput` | Boolean | No | If true, only sends `additionalInput` as input |
|
|
115
|
+
|
|
116
|
+
### Input Mapping
|
|
117
|
+
|
|
118
|
+
Map upstream data into the fields the DataRaptor Load expects:
|
|
119
|
+
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"additionalInput": {
|
|
123
|
+
"FirstName": "%SetInputValues:firstName%",
|
|
124
|
+
"LastName": "%SetInputValues:lastName%",
|
|
125
|
+
"AccountId": "%GetAccountDetails:Id%"
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Output
|
|
131
|
+
|
|
132
|
+
Returns the result of the DML operation:
|
|
133
|
+
|
|
134
|
+
```json
|
|
135
|
+
{
|
|
136
|
+
"CreateContact": {
|
|
137
|
+
"Id": "003XXXXXXXXXXXX",
|
|
138
|
+
"errors": [],
|
|
139
|
+
"success": true
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Error Handling
|
|
145
|
+
|
|
146
|
+
Always follow a DataRaptor Load with error inspection. Check for:
|
|
147
|
+
- `success` field (boolean)
|
|
148
|
+
- `errors` array (contains error objects with `statusCode` and `message`)
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## 3. DataRaptor Transform Action
|
|
153
|
+
|
|
154
|
+
Reshapes data without making any Salesforce queries or DML. Uses a DataRaptor Transform definition to map fields between JSON structures.
|
|
155
|
+
|
|
156
|
+
### PropertySetConfig
|
|
157
|
+
|
|
158
|
+
```json
|
|
159
|
+
{
|
|
160
|
+
"bundle": "DRTransform_FlattenAddress",
|
|
161
|
+
"additionalInput": {},
|
|
162
|
+
"additionalOutput": {},
|
|
163
|
+
"sendOnlyAdditionalInput": false,
|
|
164
|
+
"responseJSONPath": "",
|
|
165
|
+
"responseJSONNode": ""
|
|
166
|
+
}
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Key Properties
|
|
170
|
+
|
|
171
|
+
| Property | Type | Required | Description |
|
|
172
|
+
|----------|------|----------|-------------|
|
|
173
|
+
| `bundle` | String | Yes | Name of the DataRaptor Transform definition |
|
|
174
|
+
| `additionalInput` | Object | No | Extra key-value pairs to include in the transform input |
|
|
175
|
+
|
|
176
|
+
### Use Cases
|
|
177
|
+
|
|
178
|
+
- Flatten nested JSON structures for downstream processing
|
|
179
|
+
- Rename fields to match external API contracts
|
|
180
|
+
- Combine data from multiple upstream elements into a single structure
|
|
181
|
+
- Extract specific fields from a large response
|
|
182
|
+
|
|
183
|
+
### Input/Output
|
|
184
|
+
|
|
185
|
+
Input: The full IP data context or specific values via `additionalInput`
|
|
186
|
+
Output: The transformed JSON structure, stored under the element name
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## 4. Remote Action
|
|
191
|
+
|
|
192
|
+
Calls an Apex class method. The Apex class must implement the `vlocity_cmt.VlocityOpenInterface` (managed package) or `omnistudio.VlocityOpenInterface2` (Core namespace) interface.
|
|
193
|
+
|
|
194
|
+
### PropertySetConfig
|
|
195
|
+
|
|
196
|
+
```json
|
|
197
|
+
{
|
|
198
|
+
"remoteClass": "AccountValidationService",
|
|
199
|
+
"remoteMethod": "validateAccount",
|
|
200
|
+
"additionalInput": {},
|
|
201
|
+
"additionalOutput": {},
|
|
202
|
+
"sendOnlyAdditionalInput": false,
|
|
203
|
+
"responseJSONPath": "",
|
|
204
|
+
"responseJSONNode": "",
|
|
205
|
+
"useQueueableApexRemoting": false,
|
|
206
|
+
"useFuture": false
|
|
207
|
+
}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Key Properties
|
|
211
|
+
|
|
212
|
+
| Property | Type | Required | Description |
|
|
213
|
+
|----------|------|----------|-------------|
|
|
214
|
+
| `remoteClass` | String | Yes | Apex class name |
|
|
215
|
+
| `remoteMethod` | String | Yes | Method name to invoke |
|
|
216
|
+
| `useQueueableApexRemoting` | Boolean | No | If true, executes as a Queueable job (async) |
|
|
217
|
+
| `useFuture` | Boolean | No | If true, executes as a future method (async, no return value) |
|
|
218
|
+
|
|
219
|
+
### Apex Interface
|
|
220
|
+
|
|
221
|
+
The Apex class must follow this pattern:
|
|
222
|
+
|
|
223
|
+
```apex
|
|
224
|
+
// Core namespace
|
|
225
|
+
global class AccountValidationService implements omnistudio.VlocityOpenInterface2 {
|
|
226
|
+
global Object invokeMethod(
|
|
227
|
+
String methodName,
|
|
228
|
+
Map<String, Object> inputMap,
|
|
229
|
+
Map<String, Object> outputMap,
|
|
230
|
+
Map<String, Object> options
|
|
231
|
+
) {
|
|
232
|
+
if (methodName == 'validateAccount') {
|
|
233
|
+
// Business logic here
|
|
234
|
+
String accountId = (String) inputMap.get('AccountId');
|
|
235
|
+
// ... validation logic ...
|
|
236
|
+
outputMap.put('isValid', true);
|
|
237
|
+
outputMap.put('validationMessages', new List<String>());
|
|
238
|
+
}
|
|
239
|
+
return null;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
### Input Mapping
|
|
245
|
+
|
|
246
|
+
The IP data context is passed as `inputMap`. Use `additionalInput` to add or override values:
|
|
247
|
+
|
|
248
|
+
```json
|
|
249
|
+
{
|
|
250
|
+
"additionalInput": {
|
|
251
|
+
"AccountId": "%GetAccountDetails:Id%",
|
|
252
|
+
"validationType": "full"
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### Output
|
|
258
|
+
|
|
259
|
+
The `outputMap` contents are stored under the element name:
|
|
260
|
+
|
|
261
|
+
```json
|
|
262
|
+
{
|
|
263
|
+
"ValidateAccount": {
|
|
264
|
+
"isValid": true,
|
|
265
|
+
"validationMessages": []
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## 5. Integration Procedure Action
|
|
273
|
+
|
|
274
|
+
Calls another Integration Procedure. Enables composition and reuse of IP logic.
|
|
275
|
+
|
|
276
|
+
### PropertySetConfig
|
|
277
|
+
|
|
278
|
+
```json
|
|
279
|
+
{
|
|
280
|
+
"ipMethod": "SharedLookup_Standard",
|
|
281
|
+
"additionalInput": {},
|
|
282
|
+
"additionalOutput": {},
|
|
283
|
+
"sendOnlyAdditionalInput": false,
|
|
284
|
+
"responseJSONPath": "",
|
|
285
|
+
"responseJSONNode": "",
|
|
286
|
+
"chainable": false
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### Key Properties
|
|
291
|
+
|
|
292
|
+
| Property | Type | Required | Description |
|
|
293
|
+
|----------|------|----------|-------------|
|
|
294
|
+
| `ipMethod` | String | Yes | The nested IP's Type_SubType identifier |
|
|
295
|
+
| `chainable` | Boolean | No | If true, allows chaining outputs from the nested IP |
|
|
296
|
+
| `sendOnlyAdditionalInput` | Boolean | No | If true, only sends `additionalInput` to the nested IP |
|
|
297
|
+
|
|
298
|
+
### Input Mapping
|
|
299
|
+
|
|
300
|
+
By default, the entire IP data context is passed to the nested IP. Use `sendOnlyAdditionalInput: true` with `additionalInput` to send only specific data:
|
|
301
|
+
|
|
302
|
+
```json
|
|
303
|
+
{
|
|
304
|
+
"ipMethod": "ContactLookup_Standard",
|
|
305
|
+
"sendOnlyAdditionalInput": true,
|
|
306
|
+
"additionalInput": {
|
|
307
|
+
"accountId": "%GetAccountDetails:Id%"
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
### Output
|
|
313
|
+
|
|
314
|
+
The nested IP's full response is stored under the calling element's name:
|
|
315
|
+
|
|
316
|
+
```json
|
|
317
|
+
{
|
|
318
|
+
"LookupContacts": {
|
|
319
|
+
"contacts": [...],
|
|
320
|
+
"totalCount": 5
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
### Circular Dependency Prevention
|
|
326
|
+
|
|
327
|
+
Before configuring an IP Action, verify that the target IP does not call back to the current IP (directly or through intermediaries). Circular calls cause stack overflow errors at runtime.
|
|
328
|
+
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
## 6. HTTP Action
|
|
332
|
+
|
|
333
|
+
Makes an HTTP callout to an external API endpoint.
|
|
334
|
+
|
|
335
|
+
### PropertySetConfig
|
|
336
|
+
|
|
337
|
+
```json
|
|
338
|
+
{
|
|
339
|
+
"path": "https://api.example.com/v1/accounts",
|
|
340
|
+
"method": "POST",
|
|
341
|
+
"headers": {
|
|
342
|
+
"Content-Type": "application/json",
|
|
343
|
+
"Authorization": "Bearer %GetToken:accessToken%"
|
|
344
|
+
},
|
|
345
|
+
"body": {},
|
|
346
|
+
"additionalInput": {},
|
|
347
|
+
"additionalOutput": {},
|
|
348
|
+
"sendOnlyAdditionalInput": false,
|
|
349
|
+
"responseJSONPath": "",
|
|
350
|
+
"responseJSONNode": "",
|
|
351
|
+
"namedCredential": "",
|
|
352
|
+
"timeout": 30000
|
|
353
|
+
}
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
### Key Properties
|
|
357
|
+
|
|
358
|
+
| Property | Type | Required | Description |
|
|
359
|
+
|----------|------|----------|-------------|
|
|
360
|
+
| `path` | String | Yes | Full URL or relative path (if using Named Credential) |
|
|
361
|
+
| `method` | String | Yes | HTTP method: GET, POST, PUT, PATCH, DELETE |
|
|
362
|
+
| `headers` | Object | No | Request headers as key-value pairs |
|
|
363
|
+
| `body` | Object | No | Request body (for POST/PUT/PATCH) |
|
|
364
|
+
| `namedCredential` | String | No | Salesforce Named Credential for authentication |
|
|
365
|
+
| `timeout` | Number | No | Request timeout in milliseconds |
|
|
366
|
+
|
|
367
|
+
### Security Best Practices
|
|
368
|
+
|
|
369
|
+
- Use Named Credentials for API authentication instead of hardcoded tokens
|
|
370
|
+
- Reference tokens from upstream elements (e.g., OAuth token retrieval) using `%elementName:key%` syntax
|
|
371
|
+
- Never store API keys in PropertySetConfig — use Custom Settings or Custom Metadata
|
|
372
|
+
|
|
373
|
+
### Input Mapping
|
|
374
|
+
|
|
375
|
+
Use `additionalInput` to build dynamic request bodies:
|
|
376
|
+
|
|
377
|
+
```json
|
|
378
|
+
{
|
|
379
|
+
"body": {
|
|
380
|
+
"accountName": "%GetAccountDetails:Name%",
|
|
381
|
+
"externalId": "%InputData:externalId%"
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
### Output
|
|
387
|
+
|
|
388
|
+
The HTTP response is stored under the element name:
|
|
389
|
+
|
|
390
|
+
```json
|
|
391
|
+
{
|
|
392
|
+
"CallExternalAPI": {
|
|
393
|
+
"statusCode": 200,
|
|
394
|
+
"body": {
|
|
395
|
+
"result": "success",
|
|
396
|
+
"externalRecordId": "EXT-12345"
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
### Error Handling
|
|
403
|
+
|
|
404
|
+
Check `statusCode` in a downstream Conditional Block:
|
|
405
|
+
|
|
406
|
+
- 2xx: Success, proceed
|
|
407
|
+
- 4xx: Client error, log and return error response
|
|
408
|
+
- 5xx: Server error, consider retry or graceful degradation
|
|
409
|
+
|
|
410
|
+
---
|
|
411
|
+
|
|
412
|
+
## 7. Conditional Block
|
|
413
|
+
|
|
414
|
+
Evaluates conditions and branches execution based on the result. Contains child elements that execute only when the condition evaluates to true.
|
|
415
|
+
|
|
416
|
+
### Configuration
|
|
417
|
+
|
|
418
|
+
Conditional Blocks do not use PropertySetConfig in the same way as action elements. Instead, conditions are defined in the element's condition configuration:
|
|
419
|
+
|
|
420
|
+
### Condition Types
|
|
421
|
+
|
|
422
|
+
| Condition Type | Description | Example |
|
|
423
|
+
|----------------|-------------|---------|
|
|
424
|
+
| Value Comparison | Compare two values | `%GetAccount:Industry% EQUALS 'Technology'` |
|
|
425
|
+
| Null Check | Check if a value is null/empty | `%GetAccount:Id% IS NOT NULL` |
|
|
426
|
+
| Boolean Check | Evaluate a boolean value | `%ValidateInput:isValid% EQUALS true` |
|
|
427
|
+
| Group (AND/OR) | Combine multiple conditions | `condition1 AND condition2` |
|
|
428
|
+
|
|
429
|
+
### Nested Elements
|
|
430
|
+
|
|
431
|
+
Elements inside a Conditional Block execute only when the condition is true. They follow the same ordering principles as top-level elements.
|
|
432
|
+
|
|
433
|
+
### If/Else Pattern
|
|
434
|
+
|
|
435
|
+
Use two Conditional Blocks with complementary conditions:
|
|
436
|
+
|
|
437
|
+
1. **Conditional Block A**: condition = `%check:value% EQUALS true` -> contains success path elements
|
|
438
|
+
2. **Conditional Block B**: condition = `%check:value% NOT EQUALS true` -> contains error/alternate path elements
|
|
439
|
+
|
|
440
|
+
---
|
|
441
|
+
|
|
442
|
+
## 8. Loop Block
|
|
443
|
+
|
|
444
|
+
Iterates over a collection (array) and executes child elements for each item.
|
|
445
|
+
|
|
446
|
+
### Configuration
|
|
447
|
+
|
|
448
|
+
| Property | Description |
|
|
449
|
+
|----------|-------------|
|
|
450
|
+
| Loop collection | JSONPath to the array to iterate over (e.g., `%GetContacts:records%`) |
|
|
451
|
+
| Loop element variable | Variable name for the current item in each iteration |
|
|
452
|
+
|
|
453
|
+
### Child Elements
|
|
454
|
+
|
|
455
|
+
Elements inside a Loop Block execute once per iteration. The current item is accessible via the loop element variable.
|
|
456
|
+
|
|
457
|
+
### Performance Considerations
|
|
458
|
+
|
|
459
|
+
- Minimize the number of elements inside the loop body
|
|
460
|
+
- Avoid DataRaptor Extract/Load inside loops (N+1 pattern)
|
|
461
|
+
- Prefer bulk operations: collect data in the loop, perform a single DML after the loop
|
|
462
|
+
- Set appropriate batch sizes for large collections
|
|
463
|
+
- If loop body requires DML, consider using a single DataRaptor Load with a collection input instead
|
|
464
|
+
|
|
465
|
+
### Example Pattern: Collect and Bulk Process
|
|
466
|
+
|
|
467
|
+
Instead of:
|
|
468
|
+
```
|
|
469
|
+
Loop -> DataRaptor Load (per item) // BAD: N DML operations
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
Use:
|
|
473
|
+
```
|
|
474
|
+
Loop -> Set Values (collect items into array)
|
|
475
|
+
DataRaptor Load (entire array) // GOOD: 1 DML operation
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
---
|
|
479
|
+
|
|
480
|
+
## 9. Set Values
|
|
481
|
+
|
|
482
|
+
Assigns values to variables within the IP context. Used for initialization, response assembly, and data transformation.
|
|
483
|
+
|
|
484
|
+
### Configuration
|
|
485
|
+
|
|
486
|
+
Set Values elements define key-value mappings:
|
|
487
|
+
|
|
488
|
+
| Mapping Type | Description | Example |
|
|
489
|
+
|--------------|-------------|---------|
|
|
490
|
+
| Static value | Hardcoded constant | `"status": "Processed"` |
|
|
491
|
+
| Element reference | Value from upstream element | `"accountName": "%GetAccount:Name%"` |
|
|
492
|
+
| Formula | Computed value | Concatenation, conditional expressions |
|
|
493
|
+
| Input reference | Value from IP input | `"requestId": "%input:requestId%"` |
|
|
494
|
+
|
|
495
|
+
### Common Uses
|
|
496
|
+
|
|
497
|
+
1. **Initialize defaults**: Set default values at the beginning of the procedure
|
|
498
|
+
2. **Build output response**: Assemble the final response JSON at the end
|
|
499
|
+
3. **Intermediate variables**: Store computed values for use in downstream conditions
|
|
500
|
+
4. **Error response**: Build standardized error response objects
|
|
501
|
+
|
|
502
|
+
### Example: Response Assembly
|
|
503
|
+
|
|
504
|
+
```
|
|
505
|
+
Set Values: "BuildResponse"
|
|
506
|
+
out_success = true
|
|
507
|
+
out_accountId = %GetAccount:Id%
|
|
508
|
+
out_contactCount = %GetContacts:totalSize%
|
|
509
|
+
out_status = "Complete"
|
|
510
|
+
```
|
|
511
|
+
|
|
512
|
+
---
|
|
513
|
+
|
|
514
|
+
## 10. Variable Scoping and Data Passing
|
|
515
|
+
|
|
516
|
+
### Scope Rules
|
|
517
|
+
|
|
518
|
+
| Scope Level | Visibility | Lifetime |
|
|
519
|
+
|-------------|------------|----------|
|
|
520
|
+
| IP Input | All elements | Entire execution |
|
|
521
|
+
| Element Output | All downstream elements | Entire execution |
|
|
522
|
+
| Set Values Variable | All downstream elements | Entire execution |
|
|
523
|
+
| Loop Variable | Elements inside the loop body | Current iteration |
|
|
524
|
+
| Conditional Block Variable | Elements inside the block | Block execution |
|
|
525
|
+
| Nested IP Output | Calling element and downstream | Entire execution (under element name) |
|
|
526
|
+
|
|
527
|
+
### Data Context
|
|
528
|
+
|
|
529
|
+
The IP maintains a cumulative data context. Each element's output is added to this context under the element's name. Downstream elements can reference any upstream element's output.
|
|
530
|
+
|
|
531
|
+
### Reference Syntax
|
|
532
|
+
|
|
533
|
+
| Syntax | Description | Example |
|
|
534
|
+
|--------|-------------|---------|
|
|
535
|
+
| `%elementName:key%` | Reference a specific key from an element's output | `%GetAccount:Name%` |
|
|
536
|
+
| `%elementName:nested.key%` | Reference a nested key using dot notation | `%GetAccount:BillingAddress.City%` |
|
|
537
|
+
| `%elementName:array[0]%` | Reference an array element by index | `%GetContacts:records[0].Name%` |
|
|
538
|
+
| `%input:key%` | Reference an IP input parameter | `%input:accountId%` |
|
|
539
|
+
|
|
540
|
+
### Data Passing to Nested IPs
|
|
541
|
+
|
|
542
|
+
When calling a nested IP via Integration Procedure Action:
|
|
543
|
+
|
|
544
|
+
- **Default**: The entire data context is passed as input
|
|
545
|
+
- **Selective**: Use `sendOnlyAdditionalInput: true` + `additionalInput` to pass specific values
|
|
546
|
+
- **Output**: The nested IP's response is namespaced under the calling element's name
|
|
547
|
+
|
|
548
|
+
### Data Passing Best Practices
|
|
549
|
+
|
|
550
|
+
- Use `sendOnlyAdditionalInput: true` for nested IP calls to avoid leaking unnecessary data
|
|
551
|
+
- Keep variable names consistent across elements for readability
|
|
552
|
+
- Document the expected data shape at each stage of the procedure
|
|
553
|
+
- Use Set Values to explicitly name and scope intermediate results rather than relying on implicit context merging
|
|
554
|
+
|
|
555
|
+
---
|
|
556
|
+
|
|
557
|
+
## 11. PropertySetConfig Common Properties
|
|
558
|
+
|
|
559
|
+
These properties are available on most action elements:
|
|
560
|
+
|
|
561
|
+
| Property | Type | Default | Description |
|
|
562
|
+
|----------|------|---------|-------------|
|
|
563
|
+
| `additionalInput` | Object | `{}` | Extra key-value pairs added to the element's input |
|
|
564
|
+
| `additionalOutput` | Object | `{}` | Extra key-value pairs added to the element's output |
|
|
565
|
+
| `sendOnlyAdditionalInput` | Boolean | `false` | If true, only `additionalInput` is sent (upstream context excluded) |
|
|
566
|
+
| `responseJSONPath` | String | `""` | JSONPath to extract a subset of the element's response |
|
|
567
|
+
| `responseJSONNode` | String | `""` | Key name to wrap the response under |
|
|
568
|
+
| `useQueueableApexRemoting` | Boolean | `false` | Execute asynchronously via Queueable Apex |
|
|
569
|
+
| `disableFlushCacheForGet` | Boolean | `false` | Use cached results if available |
|
|
570
|
+
|
|
571
|
+
### `responseJSONPath` vs `responseJSONNode`
|
|
572
|
+
|
|
573
|
+
- `responseJSONPath`: Extracts a subset of the response. For example, `$.records` extracts only the `records` array from the response.
|
|
574
|
+
- `responseJSONNode`: Wraps the response under a named key. For example, setting `responseJSONNode` to `accountData` wraps the entire response under `{"accountData": {...}}`.
|
|
575
|
+
|
|
576
|
+
These can be combined: first extract via path, then wrap under a node name.
|
|
577
|
+
|
|
578
|
+
### `additionalInput` Merge Behavior
|
|
579
|
+
|
|
580
|
+
When `sendOnlyAdditionalInput` is false (default):
|
|
581
|
+
1. The IP's current data context is used as the base input
|
|
582
|
+
2. `additionalInput` key-value pairs are merged into this context
|
|
583
|
+
3. If a key exists in both, `additionalInput` takes precedence (override)
|
|
584
|
+
|
|
585
|
+
When `sendOnlyAdditionalInput` is true:
|
|
586
|
+
1. The data context is ignored
|
|
587
|
+
2. Only `additionalInput` key-value pairs are sent as input
|
|
588
|
+
3. Use this for nested IP calls where you want a clean input boundary
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Integration Procedure CLI Commands
|
|
3
|
+
# Replace <Name> with the IP's Type_SubType name and <org> with your authenticated org alias.
|
|
4
|
+
|
|
5
|
+
# Query active Integration Procedures (add filters as needed)
|
|
6
|
+
sf data query -q "SELECT Id,Name,Type,SubType,IsActive FROM OmniProcess WHERE IsActive=true AND IsIntegrationProcedure=true LIMIT 200" -o <org>
|
|
7
|
+
|
|
8
|
+
# Query all Integration Procedures including inactive, sorted by most recently modified
|
|
9
|
+
sf data query -q "SELECT Id,Name,Type,SubType,IsActive,LastModifiedDate FROM OmniProcess WHERE IsIntegrationProcedure=true ORDER BY LastModifiedDate DESC LIMIT 200" -o <org>
|
|
10
|
+
|
|
11
|
+
# Retrieve an Integration Procedure from an org
|
|
12
|
+
sf project retrieve start -m OmniIntegrationProcedure:<Name> -o <org>
|
|
13
|
+
|
|
14
|
+
# Deploy an Integration Procedure to an org
|
|
15
|
+
sf project deploy start -m OmniIntegrationProcedure:<Name> -o <org>
|
|
16
|
+
|
|
17
|
+
# Deploy with dry-run validation first (recommended before production deploys)
|
|
18
|
+
sf project deploy start -m OmniIntegrationProcedure:<Name> -o <org> --dry-run
|