@salesforce/afv-skills 1.65.0 → 1.65.1
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/field-service-data-capture-form-deployer-configure/SKILL.md +2 -23
- package/skills/field-service-data-capture-form-designer-configure/SKILL.md +3 -13
- package/skills/field-service-mobile-branding-configure/SKILL.md +3 -17
- package/skills/field-service-objective-designer-configure/SKILL.md +379 -72
- package/skills/field-service-prework-brief-deployer-configure/SKILL.md +537 -10
- package/skills/field-service-scheduling-policy-designer-query/SKILL.md +1093 -65
- package/skills/field-service-sobject-create-configure/SKILL.md +213 -13
- package/skills/field-service-voice-to-form-configure/SKILL.md +11 -40
- package/skills/field-service-work-rule-designer-configure/SKILL.md +95 -121
- package/skills/agentforce-gpt-email-generation-configure/SKILL.md +0 -312
- package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +0 -64
- package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +0 -46
- package/skills/automation-company-profile-info-query/SKILL.md +0 -51
- package/skills/automation-digital-wallet-configure/SKILL.md +0 -689
- package/skills/automation-flow-coordinate/SKILL.md +0 -95
- package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +0 -1569
- package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +0 -96
- package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +0 -23
- package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +0 -31
- package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +0 -179
- package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +0 -13
- package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +0 -83
- package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +0 -69
- package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +0 -274
- package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +0 -192
- package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +0 -130
- package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +0 -92
- package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +0 -88
- package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +0 -152
- package/skills/automation-flow-coordinate/references/elements/start/start.md +0 -539
- package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +0 -152
- package/skills/automation-flow-coordinate/references/elements/wait/wait.md +0 -497
- package/skills/automation-flow-coordinate/references/recipes/author/author.md +0 -868
- package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +0 -300
- package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +0 -292
- package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +0 -323
- package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +0 -109
- package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +0 -219
- package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +0 -180
- package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +0 -175
- package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +0 -255
- package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +0 -212
- package/skills/automation-flow-coordinate/references/resources/variable/variable.md +0 -171
- package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +0 -786
- package/skills/automation-flow-coordinate/references/shared/end/end.md +0 -267
- package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +0 -69
- package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +0 -80
- package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +0 -116
- package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +0 -321
- package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +0 -320
- package/skills/automation-flow-coordinate/references/shared/server-functions.md +0 -597
- package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +0 -69
- package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +0 -78
- package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +0 -373
- package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +0 -273
- package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +0 -259
- package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +0 -369
- package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +0 -542
- package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +0 -159
- package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +0 -349
- package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +0 -505
- package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +0 -380
- package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +0 -567
- package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +0 -159
- package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +0 -360
- package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +0 -539
- package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +0 -358
- package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +0 -602
- package/skills/commerce-b2b-store-configure/SKILL.md +0 -251
- package/skills/commerce-credit-memo-create/SKILL.md +0 -139
- package/skills/commerce-delivery-business-hours-configure/SKILL.md +0 -277
- package/skills/commerce-delivery-estimation-apply/SKILL.md +0 -155
- package/skills/commerce-delivery-estimation-configure/SKILL.md +0 -377
- package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +0 -174
- package/skills/commerce-estimate-bopis-query/SKILL.md +0 -279
- package/skills/commerce-estimate-delivery-date-query/SKILL.md +0 -349
- package/skills/commerce-fees-apply/SKILL.md +0 -227
- package/skills/commerce-fulfillment-routing-analyze/SKILL.md +0 -200
- package/skills/commerce-guest-buyer-create/SKILL.md +0 -173
- package/skills/commerce-location-bopis-configure/SKILL.md +0 -378
- package/skills/commerce-location-business-hours-configure/SKILL.md +0 -235
- package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +0 -309
- package/skills/commerce-location-graph-integrate/SKILL.md +0 -131
- package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +0 -755
- package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +0 -331
- package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +0 -579
- package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +0 -626
- package/skills/commerce-merchant-catalog-configure/SKILL.md +0 -614
- package/skills/commerce-merchant-extension-provider-configure/SKILL.md +0 -368
- package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +0 -118
- package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +0 -65
- package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +0 -90
- package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +0 -72
- package/skills/commerce-merchant-insights-query/SKILL.md +0 -279
- package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +0 -656
- package/skills/commerce-order-summary-change-apply/SKILL.md +0 -375
- package/skills/commerce-product-details-get/SKILL.md +0 -363
- package/skills/commerce-product-search/SKILL.md +0 -563
- package/skills/commerce-react-storefront-create/SKILL.md +0 -350
- package/skills/commerce-return-order-summary-create/SKILL.md +0 -513
- package/skills/commerce-search-relevance-analyze/SKILL.md +0 -757
- package/skills/commerce-temporary-processing-time-override-create/SKILL.md +0 -274
- package/skills/communications-initial-setup-configure/SKILL.md +0 -630
- package/skills/communications-multisite-configure/SKILL.md +0 -571
- package/skills/communications-revenue-cloud-settings-configure/SKILL.md +0 -74
- package/skills/communications-smb-fiber-catalog-create/SKILL.md +0 -413
- package/skills/communications-tmf-integrate/SKILL.md +0 -1368
- package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +0 -448
- package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +0 -269
- package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +0 -271
- package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +0 -382
- package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +0 -373
- package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +0 -389
- package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +0 -338
- package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +0 -547
- package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +0 -346
- package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +0 -1110
- package/skills/crm-analytics-adoption-insights-configure/SKILL.md +0 -224
- package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +0 -418
- package/skills/crm-analytics-dashboards-configure/SKILL.md +0 -731
- package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +0 -233
- package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +0 -184
- package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +0 -167
- package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +0 -55
- package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +0 -1350
- package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +0 -1862
- package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +0 -83
- package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +0 -81
- package/skills/data360-activation-create/SKILL.md +0 -104
- package/skills/data360-activation-external-platform-get/SKILL.md +0 -49
- package/skills/data360-activation-target-create/SKILL.md +0 -93
- package/skills/data360-activation-v2-create/SKILL.md +0 -456
- package/skills/data360-audience-dmo-get/SKILL.md +0 -38
- package/skills/data360-calculated-affinity-create/SKILL.md +0 -82
- package/skills/data360-calculated-insight-create/SKILL.md +0 -148
- package/skills/data360-catalog-metadata-create/SKILL.md +0 -183
- package/skills/data360-code-extension-create/SKILL.md +0 -115
- package/skills/data360-communication-capping-create/SKILL.md +0 -227
- package/skills/data360-connection-create/SKILL.md +0 -491
- package/skills/data360-content-lens-create/SKILL.md +0 -181
- package/skills/data360-data-action-create/SKILL.md +0 -126
- package/skills/data360-data-action-target-create/SKILL.md +0 -181
- package/skills/data360-data-clean-room-create/SKILL.md +0 -238
- package/skills/data360-data-governance-create/SKILL.md +0 -746
- package/skills/data360-data-graph-create/SKILL.md +0 -82
- package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +0 -38
- package/skills/data360-data-lake-object-create/SKILL.md +0 -207
- package/skills/data360-data-model-object-catalog-get/SKILL.md +0 -49
- package/skills/data360-data-model-object-create/SKILL.md +0 -128
- package/skills/data360-data-model-object-mapping-create/SKILL.md +0 -106
- package/skills/data360-data-space-create/SKILL.md +0 -161
- package/skills/data360-data-streams-create/SKILL.md +0 -324
- package/skills/data360-engagement-signal-get/SKILL.md +0 -38
- package/skills/data360-experiment-create/SKILL.md +0 -82
- package/skills/data360-goal-based-campaign-create/SKILL.md +0 -192
- package/skills/data360-harmonization-process-history-get/SKILL.md +0 -38
- package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +0 -84
- package/skills/data360-identity-resolution-create/SKILL.md +0 -115
- package/skills/data360-intelligent-document-processing-create/SKILL.md +0 -148
- package/skills/data360-knowledge-graph-construction-create/SKILL.md +0 -93
- package/skills/data360-knowledge-graph-create/SKILL.md +0 -216
- package/skills/data360-knowledge-space-mcp-configure/SKILL.md +0 -475
- package/skills/data360-machine-learning-mcp-configure/SKILL.md +0 -697
- package/skills/data360-multi-org-mcp-configure/SKILL.md +0 -117
- package/skills/data360-secondary-index-mcp-configure/SKILL.md +0 -126
- package/skills/data360-segment-mcp-configure/SKILL.md +0 -159
- package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +0 -93
- package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +0 -93
- package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +0 -93
- package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +0 -38
- package/skills/data360-semantic-engine-mcp-configure/SKILL.md +0 -62
- package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +0 -38
- package/skills/data360-semantic-metric-mcp-configure/SKILL.md +0 -93
- package/skills/data360-semantic-model-mcp-configure/SKILL.md +0 -115
- package/skills/data360-standard-mapping-mcp-configure/SKILL.md +0 -38
- package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +0 -73
- package/skills/experience-afv-query/SKILL.md +0 -234
- package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +0 -63
- package/skills/experience-apex-components-configure/SKILL.md +0 -69
- package/skills/experience-apex-pages-configure/SKILL.md +0 -107
- package/skills/experience-app-home-configure/SKILL.md +0 -76
- package/skills/experience-aura-lightning-out-access-configure/SKILL.md +0 -58
- package/skills/experience-briefcase-configure/SKILL.md +0 -287
- package/skills/experience-community-flexi-page-list-create/SKILL.md +0 -74
- package/skills/experience-community-template-definition-list-query/SKILL.md +0 -48
- package/skills/experience-community-theme-definition-list-query/SKILL.md +0 -38
- package/skills/experience-content-assets-configure/SKILL.md +0 -86
- package/skills/experience-custom-domain-create/SKILL.md +0 -727
- package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +0 -41
- package/skills/experience-field-service-app-builder-configure/SKILL.md +0 -187
- package/skills/experience-flow-category-configure/SKILL.md +0 -117
- package/skills/experience-formula-configure/SKILL.md +0 -358
- package/skills/experience-global-actions-configure/SKILL.md +0 -69
- package/skills/experience-global-publisher-layouts-configure/SKILL.md +0 -79
- package/skills/experience-instrumentation-configure/SKILL.md +0 -64
- package/skills/experience-lex-engagement-configure/SKILL.md +0 -50
- package/skills/experience-lightning-bolt-open/SKILL.md +0 -12
- package/skills/experience-lightning-out-configure/SKILL.md +0 -129
- package/skills/experience-lightning-preview-configure/SKILL.md +0 -67
- package/skills/experience-lightning-types-query/SKILL.md +0 -98
- package/skills/experience-malware-scan-configure/SKILL.md +0 -71
- package/skills/experience-my-salesforce-configure/SKILL.md +0 -126
- package/skills/experience-navigation-menus-configure/SKILL.md +0 -235
- package/skills/experience-notification-types-configure/SKILL.md +0 -206
- package/skills/experience-notifications-configure/SKILL.md +0 -75
- package/skills/experience-record-discovery-query/SKILL.md +0 -227
- package/skills/experience-regenerate-previews-open/SKILL.md +0 -94
- package/skills/experience-sales-cloud-mab-configure/SKILL.md +0 -254
- package/skills/experience-schema-builder-open/SKILL.md +0 -38
- package/skills/experience-simple-record-home-configure/SKILL.md +0 -110
- package/skills/experience-static-resources-configure/SKILL.md +0 -74
- package/skills/field-service-setup-coordinate/SKILL.md +0 -62
- package/skills/field-service-work-plan-configure/SKILL.md +0 -253
- package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +0 -180
- package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +0 -196
- package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +0 -106
- package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +0 -96
- package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +0 -111
- package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +0 -250
- package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +0 -122
- package/skills/fsc-digital-origination-coordinate/SKILL.md +0 -653
- package/skills/fsc-digital-origination-demo-run/SKILL.md +0 -225
- package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +0 -112
- package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +0 -396
- package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +0 -336
- package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +0 -208
- package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +0 -375
- package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +0 -83
- package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +0 -248
- package/skills/fsc-digital-origination-sample-data-create/SKILL.md +0 -206
- package/skills/fsc-document-checklist-settings-configure/SKILL.md +0 -57
- package/skills/fsc-flexible-hierarchy-configure/SKILL.md +0 -148
- package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +0 -1430
- package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +0 -471
- package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +0 -429
- package/skills/fsc-pricing-product-configurator-configure/SKILL.md +0 -150
- package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +0 -123
- package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +0 -82
- package/skills/fsc-product-act3-attributes-create/SKILL.md +0 -249
- package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +0 -196
- package/skills/fsc-product-act5-considerations-get/SKILL.md +0 -44
- package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +0 -384
- package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +0 -144
- package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +0 -107
- package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +0 -189
- package/skills/fsc-stage-management-definition-create/SKILL.md +0 -108
- package/skills/fsc-stage-management-permissions-assign/SKILL.md +0 -143
- package/skills/fsc-stage-management-transitions-configure/SKILL.md +0 -139
- package/skills/health-cloud-appt-booking-config-configure/SKILL.md +0 -135
- package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +0 -134
- package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +0 -136
- package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +0 -134
- package/skills/health-cloud-care-requests-create/SKILL.md +0 -178
- package/skills/health-cloud-initial-configure/SKILL.md +0 -511
- package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +0 -1374
- package/skills/health-cloud-provider-search-settings-configure/SKILL.md +0 -924
- package/skills/health-cloud-referral-management-coordinate/SKILL.md +0 -513
- package/skills/health-cloud-timeline-configure/SKILL.md +0 -622
- package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +0 -135
- package/skills/industries-account-score-settings-query/SKILL.md +0 -78
- package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +0 -177
- package/skills/industries-ad-product-availability-search/SKILL.md +0 -399
- package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +0 -628
- package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +0 -73
- package/skills/industries-atm-settings-starter-configure/SKILL.md +0 -76
- package/skills/industries-batch-document-ai-configure/SKILL.md +0 -196
- package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +0 -71
- package/skills/industries-branch-management-settings-configure/SKILL.md +0 -89
- package/skills/industries-bre-decision-table-access-configure/SKILL.md +0 -367
- package/skills/industries-brokerage-settings-configure/SKILL.md +0 -41
- package/skills/industries-calendar-sync-settings-configure/SKILL.md +0 -89
- package/skills/industries-care-request-settings-configure/SKILL.md +0 -218
- package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +0 -54
- package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +0 -380
- package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +0 -216
- package/skills/industries-catalog-process-intake-configure/SKILL.md +0 -219
- package/skills/industries-catalog-process-knowledge-configure/SKILL.md +0 -153
- package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +0 -168
- package/skills/industries-cds-general-settings-configure/SKILL.md +0 -69
- package/skills/industries-claim-financial-settings-configure/SKILL.md +0 -169
- package/skills/industries-clinical-data-model-settings-configure/SKILL.md +0 -136
- package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +0 -105
- package/skills/industries-collection-plan-settings-configure/SKILL.md +0 -132
- package/skills/industries-comms-service-console-settings-configure/SKILL.md +0 -159
- package/skills/industries-compliance-configure/SKILL.md +0 -102
- package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +0 -76
- package/skills/industries-contact-center-app-layout-configure/SKILL.md +0 -88
- package/skills/industries-contact-center-components-configure/SKILL.md +0 -96
- package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +0 -95
- package/skills/industries-contact-center-user-access-assign/SKILL.md +0 -96
- package/skills/industries-course-waitlist-config-configure/SKILL.md +0 -162
- package/skills/industries-crisis-center-settings-configure/SKILL.md +0 -84
- package/skills/industries-custom-object-settings-configure/SKILL.md +0 -94
- package/skills/industries-data-cloud-integration-configure/SKILL.md +0 -88
- package/skills/industries-data-space-feature-mappings-configure/SKILL.md +0 -245
- package/skills/industries-decision-matrix-builder-configure/SKILL.md +0 -78
- package/skills/industries-decision-table-hbase-configure/SKILL.md +0 -87
- package/skills/industries-decision-table-version-configure/SKILL.md +0 -74
- package/skills/industries-decision-tables-builder-configure/SKILL.md +0 -253
- package/skills/industries-decision-tables-configure/SKILL.md +0 -439
- package/skills/industries-energy-utilities-configure/SKILL.md +0 -251
- package/skills/industries-eu-cloud-multisite-configure/SKILL.md +0 -1008
- package/skills/industries-eu-new-connections-configure/SKILL.md +0 -30
- package/skills/industries-explainability-msg-template-configure/SKILL.md +0 -135
- package/skills/industries-expression-set-message-token-configure/SKILL.md +0 -135
- package/skills/industries-field-service-settings-configure/SKILL.md +0 -82
- package/skills/industries-form-framework-settings-configure/SKILL.md +0 -30
- package/skills/industries-fsc-ai-settings-configure/SKILL.md +0 -57
- package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +0 -172
- package/skills/industries-fsc-b2b-settings-configure/SKILL.md +0 -61
- package/skills/industries-fsc-insurance-settings-configure/SKILL.md +0 -58
- package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +0 -103
- package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +0 -117
- package/skills/industries-fsc-wealth-settings-configure/SKILL.md +0 -99
- package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +0 -120
- package/skills/industries-fundraising-rfm-configure/SKILL.md +0 -128
- package/skills/industries-fundraising-settings-configure/SKILL.md +0 -145
- package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +0 -299
- package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +0 -87
- package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +0 -58
- package/skills/industries-hc-score-category-settings-configure/SKILL.md +0 -167
- package/skills/industries-health-engagement-settings-configure/SKILL.md +0 -218
- package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +0 -131
- package/skills/industries-home-health-bundling-policy-create/SKILL.md +0 -50
- package/skills/industries-home-health-entity-labels-configure/SKILL.md +0 -29
- package/skills/industries-home-health-fsl-package-deploy/SKILL.md +0 -71
- package/skills/industries-home-health-fsl-settings-validate/SKILL.md +0 -27
- package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +0 -80
- package/skills/industries-home-health-guided-setup-configure/SKILL.md +0 -836
- package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +0 -55
- package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +0 -61
- package/skills/industries-home-health-licenses-assign/SKILL.md +0 -27
- package/skills/industries-home-health-operating-hours-create/SKILL.md +0 -40
- package/skills/industries-home-health-scheduling-policy-create/SKILL.md +0 -41
- package/skills/industries-home-health-service-objective-create/SKILL.md +0 -22
- package/skills/industries-home-health-skills-create/SKILL.md +0 -31
- package/skills/industries-home-health-users-create/SKILL.md +0 -29
- package/skills/industries-icm-act3-toggles-configure/SKILL.md +0 -198
- package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +0 -361
- package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +0 -550
- package/skills/industries-integrated-care-management-configure/SKILL.md +0 -168
- package/skills/industries-object-enablement-configure/SKILL.md +0 -86
- package/skills/industries-tpm-system-processing-service-configure/SKILL.md +0 -64
- package/skills/integration-apex-settings-configure/SKILL.md +0 -61
- package/skills/marketing-e360-email-archiving-configure/SKILL.md +0 -73
- package/skills/platform-custom-permissions-configure/SKILL.md +0 -687
- package/skills/platform-label-workbench-import-create/SKILL.md +0 -67
- package/skills/platform-privacy-agent-settings-configure/SKILL.md +0 -752
|
@@ -1,622 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: health-cloud-timeline-configure
|
|
3
|
-
description: "Use this skill when users want to configure the Health Cloud Timeline feature: toggle the org-level Timeline preference (one-way enable; CannotTurnPrefOffError on disable), then create/update/activate/delete TimelineMetadataDefinition records binding an anchor entity to event-bearing related entities and optional. Trigger when users mention timeline."
|
|
4
|
-
metadata:
|
|
5
|
-
version: "1.0"
|
|
6
|
-
accessCheck: "(Timeline.userCanAccessTimeline) || (Timeline.userCanConfigureCdpEventsOnTimeline)"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Managing Timeline
|
|
10
|
-
|
|
11
|
-
## When to Use This Skill
|
|
12
|
-
|
|
13
|
-
Configure the Health Cloud Timeline feature: toggle the org-level Timeline preference (one-way enable; CannotTurnPrefOffError on disable), then create/update/activate/delete TimelineMetadataDefinition records binding an anchor entity to event-bearing related entities and optionally Data Cloud DMOs. Anchor allowlist and Timeline-eligibility filters are server-enforced. All steps route through the timeline setup endpoint — AURA-IS-CANONICAL; no public Connect/Tooling/Metadata CRUD on TimelineMetadataDefinition exists (the /connect/timeline/* family is runtime read-only). Read flow: anchor → related-entities / parents / CRM objects → event / DMO details. Write flow: enable pref → save config (RecordId omitted=create, supplied=update) → activate via setActiveStatus. Config name + API name required on save.
|
|
14
|
-
|
|
15
|
-
## Workflow
|
|
16
|
-
|
|
17
|
-
Workflow: enable Timeline pref via handle-timeline-toggle (verify with get-timeline-org-pref) → list anchors via get-anchor-object → for the chosen anchor fan out via get-related-entities-of-anchor-entity / get-parent-objects-of-anchor-entity / get-related-crm-objects-of-anchor-entity (CDP path) → drill via get-event-object-details / get-related-entity-for-preview → read get-timeline-limits + get-timeline-cdp-limits to validate caps → call save-timeline-configuration with the assembled config (omit RecordId=create, supply=update) → set-timeline-configuration-active-status to activate. Use get-timeline-object-definitions(offset) for paged listing. Substitutions: none — every step is AURA-IS-CANONICAL; the /connect/timeline/* family is runtime read-by-name, not setup CRUD.
|
|
18
|
-
|
|
19
|
-
## Critical Constraints
|
|
20
|
-
|
|
21
|
-
**Preconditions:**
|
|
22
|
-
|
|
23
|
-
- User must have Timeline AccessTimeline access (check: `Timeline access`)
|
|
24
|
-
- User must have Timeline ConfigureCdpEventsOnTimeline access (check: `Configure Data Cloud events on timeline`)
|
|
25
|
-
|
|
26
|
-
**Destructive operations — require explicit user confirmation:**
|
|
27
|
-
|
|
28
|
-
- **`delete-timeline-configuration`** — Delete a saved Timeline definition by RecordId. Destructive — no soft-delete. AURA-IS-CANONICAL — no public CRUD alternative.
|
|
29
|
-
- Rollback: No automatic rollback.
|
|
30
|
-
|
|
31
|
-
## Verification Checklist
|
|
32
|
-
|
|
33
|
-
After every write operation, confirm the effect by re-reading state:
|
|
34
|
-
|
|
35
|
-
- After `handle-timeline-toggle`: call `verify-handle-timeline-toggle` (`GET /headless/invoke/platform/timeline/get-timeline-org-pref`)
|
|
36
|
-
- After `save-timeline-configuration`: call `verify-save-timeline-configuration` (`GET /headless/invoke/platform/timeline/get-timeline-object-definitions`)
|
|
37
|
-
- After `delete-timeline-configuration`: call `verify-delete-timeline-configuration` (`GET /headless/invoke/platform/timeline/get-timeline-object-definitions`)
|
|
38
|
-
- After `set-timeline-configuration-active-status`: call `verify-set-timeline-configuration-active-status` (`GET /headless/invoke/platform/timeline/get-timeline-object-definitions`)
|
|
39
|
-
|
|
40
|
-
## Operations Reference
|
|
41
|
-
|
|
42
|
-
Operations grouped by purpose. Use these as the building blocks for the workflows above.
|
|
43
|
-
|
|
44
|
-
### Summary
|
|
45
|
-
|
|
46
|
-
| Operation | Purpose | Status | Call | Depends on |
|
|
47
|
-
|-----------|---------|--------|------|------------|
|
|
48
|
-
| `is-data-space-enabled` | read | implemented | `GET /headless/invoke/platform/timeline` | — |
|
|
49
|
-
| `get-data-spaces` | read | implemented | `GET /headless/invoke/platform/timeline/get-data-spaces` | — |
|
|
50
|
-
| `get-timeline-org-pref` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-org-pref` | — |
|
|
51
|
-
| `get-timeline-data-cloud-events-enabled` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-data-cloud-events-enabled` | `is-data-space-enabled` |
|
|
52
|
-
| `get-timeline-data-graph-events-enabled` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-data-graph-events-enabled` | `is-data-space-enabled` |
|
|
53
|
-
| `handle-timeline-toggle` | write | proposed | `PATCH /headless/invoke/platform/timeline/handle-timeline-toggle` | — |
|
|
54
|
-
| `verify-handle-timeline-toggle` | verify | — | `GET /headless/invoke/platform/timeline/get-timeline-org-pref` | `handle-timeline-toggle` |
|
|
55
|
-
| `get-timeline-limits` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-limits` | — |
|
|
56
|
-
| `get-timeline-cdp-limits` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-cdplimits` | — |
|
|
57
|
-
| `get-anchor-object` | read | proposed | `GET /headless/invoke/platform/timeline/get-anchor-object` | — |
|
|
58
|
-
| `get-timeline-object-definitions` | read | proposed | `GET /headless/invoke/platform/timeline/get-timeline-object-definitions` | — |
|
|
59
|
-
| `save-timeline-configuration` | write | proposed | `PATCH /headless/invoke/platform/timeline/save-timeline-configuration` | `get-anchor-object` |
|
|
60
|
-
| `verify-save-timeline-configuration` | verify | — | `GET /headless/invoke/platform/timeline/get-timeline-object-definitions` | `save-timeline-configuration` |
|
|
61
|
-
| `set-timeline-configuration-active-status` | write | proposed | `PATCH /headless/invoke/platform/timeline/set-timeline-configuration-active-status` | `save-timeline-configuration` |
|
|
62
|
-
| `delete-timeline-configuration` | delete | proposed | `DELETE /headless/invoke/platform/timeline/delete-timeline-configuration` | `get-timeline-object-definitions` |
|
|
63
|
-
| `verify-delete-timeline-configuration` | verify | — | `GET /headless/invoke/platform/timeline/get-timeline-object-definitions` | `delete-timeline-configuration` |
|
|
64
|
-
| `get-reference-fields-for-entity` | read | proposed | `GET /headless/invoke/platform/timeline/get-reference-fields-for-entity` | `get-anchor-object` |
|
|
65
|
-
| `get-related-entities-of-anchor-entity` | read | proposed | `GET /headless/invoke/platform/timeline/get-related-entities-of-anchor-entity` | `get-anchor-object` |
|
|
66
|
-
| `get-parent-objects-of-anchor-entity` | read | proposed | `GET /headless/invoke/platform/timeline/get-parent-objects-of-anchor-entity` | `get-anchor-object` |
|
|
67
|
-
| `get-related-crm-objects-of-anchor-entity` | read | proposed | `GET /headless/invoke/platform/timeline/get-related-crmobjects-of-anchor-entity` | `get-anchor-object`, `get-data-spaces` |
|
|
68
|
-
| `get-related-entity-for-preview` | read | proposed | `GET /headless/invoke/platform/timeline/get-related-entity-for-preview` | `get-related-entities-of-anchor-entity` |
|
|
69
|
-
| `get-event-object-details` | read | proposed | `GET /headless/invoke/platform/timeline/get-event-object-details` | `get-related-entities-of-anchor-entity` |
|
|
70
|
-
| `get-dmo-object-api-name` | read | proposed | `GET /headless/invoke/platform/timeline/get-dmo-object-api-name` | `get-related-crm-objects-of-anchor-entity` |
|
|
71
|
-
| `get-cdp-screen-data-for-edit` | read | proposed | `GET /headless/invoke/platform/timeline/get-cdp-screen-data-for-edit` | `get-anchor-object`, `get-related-crm-objects-of-anchor-entity` |
|
|
72
|
-
| `verify-set-timeline-configuration-active-status` | verify | — | `GET /headless/invoke/platform/timeline/get-timeline-object-definitions` | `set-timeline-configuration-active-status` |
|
|
73
|
-
|
|
74
|
-
### Dependency graph
|
|
75
|
-
|
|
76
|
-
```mermaid
|
|
77
|
-
graph TD
|
|
78
|
-
is_data_space_enabled["is-data-space-enabled (read)"]
|
|
79
|
-
get_data_spaces["get-data-spaces (read)"]
|
|
80
|
-
get_timeline_org_pref["get-timeline-org-pref (read)"]
|
|
81
|
-
get_timeline_data_cloud_events_enabled["get-timeline-data-cloud-events-enabled (read)"]
|
|
82
|
-
get_timeline_data_graph_events_enabled["get-timeline-data-graph-events-enabled (read)"]
|
|
83
|
-
handle_timeline_toggle["handle-timeline-toggle (write)"]
|
|
84
|
-
verify_handle_timeline_toggle["verify-handle-timeline-toggle (verify)"]
|
|
85
|
-
get_timeline_limits["get-timeline-limits (read)"]
|
|
86
|
-
get_timeline_cdp_limits["get-timeline-cdp-limits (read)"]
|
|
87
|
-
get_anchor_object["get-anchor-object (read)"]
|
|
88
|
-
get_timeline_object_definitions["get-timeline-object-definitions (read)"]
|
|
89
|
-
save_timeline_configuration["save-timeline-configuration (write)"]
|
|
90
|
-
verify_save_timeline_configuration["verify-save-timeline-configuration (verify)"]
|
|
91
|
-
set_timeline_configuration_active_status["set-timeline-configuration-active-status (write)"]
|
|
92
|
-
delete_timeline_configuration["delete-timeline-configuration (delete)"]
|
|
93
|
-
verify_delete_timeline_configuration["verify-delete-timeline-configuration (verify)"]
|
|
94
|
-
get_reference_fields_for_entity["get-reference-fields-for-entity (read)"]
|
|
95
|
-
get_related_entities_of_anchor_entity["get-related-entities-of-anchor-entity (read)"]
|
|
96
|
-
get_parent_objects_of_anchor_entity["get-parent-objects-of-anchor-entity (read)"]
|
|
97
|
-
get_related_crm_objects_of_anchor_entity["get-related-crm-objects-of-anchor-entity (read)"]
|
|
98
|
-
get_related_entity_for_preview["get-related-entity-for-preview (read)"]
|
|
99
|
-
get_event_object_details["get-event-object-details (read)"]
|
|
100
|
-
get_dmo_object_api_name["get-dmo-object-api-name (read)"]
|
|
101
|
-
get_cdp_screen_data_for_edit["get-cdp-screen-data-for-edit (read)"]
|
|
102
|
-
verify_set_timeline_configuration_active_status["verify-set-timeline-configuration-active-status (verify)"]
|
|
103
|
-
is_data_space_enabled --> get_timeline_data_cloud_events_enabled
|
|
104
|
-
is_data_space_enabled --> get_timeline_data_graph_events_enabled
|
|
105
|
-
handle_timeline_toggle --> verify_handle_timeline_toggle
|
|
106
|
-
get_anchor_object --> save_timeline_configuration
|
|
107
|
-
save_timeline_configuration --> verify_save_timeline_configuration
|
|
108
|
-
save_timeline_configuration --> set_timeline_configuration_active_status
|
|
109
|
-
get_timeline_object_definitions --> delete_timeline_configuration
|
|
110
|
-
delete_timeline_configuration --> verify_delete_timeline_configuration
|
|
111
|
-
get_anchor_object --> get_reference_fields_for_entity
|
|
112
|
-
get_anchor_object --> get_related_entities_of_anchor_entity
|
|
113
|
-
get_anchor_object --> get_parent_objects_of_anchor_entity
|
|
114
|
-
get_anchor_object --> get_related_crm_objects_of_anchor_entity
|
|
115
|
-
get_data_spaces --> get_related_crm_objects_of_anchor_entity
|
|
116
|
-
get_related_entities_of_anchor_entity --> get_related_entity_for_preview
|
|
117
|
-
get_related_entities_of_anchor_entity --> get_event_object_details
|
|
118
|
-
get_related_crm_objects_of_anchor_entity --> get_dmo_object_api_name
|
|
119
|
-
get_anchor_object --> get_cdp_screen_data_for_edit
|
|
120
|
-
get_related_crm_objects_of_anchor_entity --> get_cdp_screen_data_for_edit
|
|
121
|
-
set_timeline_configuration_active_status --> verify_set_timeline_configuration_active_status
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
### Read operations
|
|
125
|
-
|
|
126
|
-
#### `is-data-space-enabled`
|
|
127
|
-
|
|
128
|
-
Read whether Data Cloud is enabled in the org. Required precondition for configuring Timeline Data Cloud / Data Graph events. Gated by Configure Data Cloud events on timeline.
|
|
129
|
-
|
|
130
|
-
**Call:** `GET /headless/invoke/platform/timeline` — status: `implemented`
|
|
131
|
-
|
|
132
|
-
**Notes:** access_gating: A 403 {errorCode:ACCESS_DENIED} on this read means the org has NOT been provisioned for Data Cloud / data spaces (or the running user lacks data-space access) — it is an environmental precondition, NOT a broken endpoint. Confirmed live on hc-steelthread-test (403), consistent with get-timeline-data-cloud-events-enabled returning false on the same org. This read (and get-data-spaces) back the optional "Data Cloud events" section of the Timeline builder; the core Account-anchored CRM-event flow (get-anchor-object → get-event-object-details → save-timeline-configuration) does NOT depend on it. An agent should treat 403 here as "Data Cloud not enabled on this org" and skip the CDP branch, not retry.
|
|
133
|
-
|
|
134
|
-
#### `get-data-spaces`
|
|
135
|
-
|
|
136
|
-
List Data Cloud Data Spaces visible to Timeline configuration. Each space is a target for CDP-event mapping. Gated by Configure Data Cloud events on timeline.
|
|
137
|
-
|
|
138
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-data-spaces` — status: `implemented`
|
|
139
|
-
|
|
140
|
-
**Notes:** access_gating: Same environmental gate as is-data-space-enabled: 403 {errorCode:ACCESS_DENIED} = Data Cloud / data spaces not provisioned on the org (or running user lacks access). Not a skill defect. Skip the Data Cloud events branch when this returns 403.
|
|
141
|
-
|
|
142
|
-
#### `get-timeline-org-pref`
|
|
143
|
-
|
|
144
|
-
Read the org-level Timeline preference flag (boolean). False means the feature is not enabled — configuration writes will fail until handle-timeline-toggle is invoked. Also serves as the verify read for handle-timeline-toggle.
|
|
145
|
-
|
|
146
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-org-pref` — status: `proposed`
|
|
147
|
-
|
|
148
|
-
**Notes:** state_observation: Value on the target dev org has flipped from false (prior runs) to true this iteration.
|
|
149
|
-
This confirms the one-way-enable invariant: once true, the preference cannot be toggled
|
|
150
|
-
back to false via handle-timeline-toggle (500 CONTROLLER_ERROR "Timeline Org Preference
|
|
151
|
-
cannot be disabled."). Agents that read false in a prior session and cache the value
|
|
152
|
-
must re-read before deciding org readiness; the transition false → true is possible
|
|
153
|
-
between sessions, the reverse is not.
|
|
154
|
-
|
|
155
|
-
#### `get-timeline-data-cloud-events-enabled`
|
|
156
|
-
|
|
157
|
-
Check whether the org permits Data Cloud events on Timeline. Wraps Configure Data Cloud timeline events (Customize Application or sysadmin + ManageTimeline).
|
|
158
|
-
|
|
159
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-data-cloud-events-enabled` — status: `proposed`
|
|
160
|
-
|
|
161
|
-
**Depends on:** `is-data-space-enabled`
|
|
162
|
-
|
|
163
|
-
**Notes:** wire_contract: Returns a raw boolean literal in body (true|false). false means the Data-Cloud-events
|
|
164
|
-
capability on Timeline is not enabled for this org — even when the org-level Timeline
|
|
165
|
-
preference is true, agents that plan to add CDP-backed events to a configuration
|
|
166
|
-
must gate on this read. Enablement is orthogonal to the base Timeline pref: Timeline
|
|
167
|
-
can be on while DC events are off. Complementary to get-timeline-cdp-limits (which
|
|
168
|
-
returns the numeric cap once the capability is on).
|
|
169
|
-
|
|
170
|
-
#### `get-timeline-data-graph-events-enabled`
|
|
171
|
-
|
|
172
|
-
Check whether Data Graph events on Timeline are permitted. Wraps Configure Data Graph timeline events; gated by Timeline access.
|
|
173
|
-
|
|
174
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-data-graph-events-enabled` — status: `proposed`
|
|
175
|
-
|
|
176
|
-
**Depends on:** `is-data-space-enabled`
|
|
177
|
-
|
|
178
|
-
**Notes:** wire_contract: Returns a raw boolean literal in body (true|false). false means Data Graph events
|
|
179
|
-
on Timeline are not enabled for this org. Independent of both the base Timeline
|
|
180
|
-
preference and the Data Cloud events capability. Read this before offering
|
|
181
|
-
Data-Graph-derived events in a configuration payload.
|
|
182
|
-
|
|
183
|
-
#### `get-timeline-limits`
|
|
184
|
-
|
|
185
|
-
Read server-enforced numeric caps for CRM-event Timeline configuration (max events per anchor, max fields per event). Validate a config payload against these caps before save-timeline-configuration.
|
|
186
|
-
|
|
187
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-limits` — status: `proposed`
|
|
188
|
-
|
|
189
|
-
**Notes:** wire_contract: Returns a fixed-shape JSON envelope carrying three integer caps on a Timeline
|
|
190
|
-
configuration payload:
|
|
191
|
-
- TimelineEventLimit: 5 — maximum number of event sub-objects in one config
|
|
192
|
-
- TimelineConditionsLimit: 3 — maximum filter conditions per event
|
|
193
|
-
- TimelineRecordTypeLimit: 3 — maximum record-type filters per event
|
|
194
|
-
Values are org-scoped and driven by the platform, not adjustable via SOR write.
|
|
195
|
-
Agents constructing a save-timeline-configuration body must validate the event
|
|
196
|
-
list length ≤ TimelineEventLimit and per-event condition/recordType arrays ≤
|
|
197
|
-
their respective caps before dispatch — the write controller rejects
|
|
198
|
-
over-limit payloads. Complementary to get-timeline-cdp-limits (which caps the
|
|
199
|
-
CDP-backed event subtree separately).
|
|
200
|
-
|
|
201
|
-
#### `get-timeline-cdp-limits`
|
|
202
|
-
|
|
203
|
-
Read server-enforced numeric caps for Data Cloud / DMO event sources on a Timeline. Use alongside get-timeline-limits when the payload includes CDP events.
|
|
204
|
-
|
|
205
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-cdplimits` — status: `proposed`
|
|
206
|
-
|
|
207
|
-
**Notes:** wire_contract: Returns a single-key JSON envelope `{"TimelineEventCDPLimit": 1}` — the cap on
|
|
208
|
-
CDP-backed events per Timeline configuration on the current org. When
|
|
209
|
-
get-timeline-data-cloud-events-enabled returns false this cap is still
|
|
210
|
-
readable but not exercisable (the write path rejects CDP-flow events until the
|
|
211
|
-
DC capability is on). Agents planning a mixed CRM + CDP event mix must gate
|
|
212
|
-
their DC-event count on this limit AND on the DC-events-enabled flag before
|
|
213
|
-
submitting a save-timeline-configuration body.
|
|
214
|
-
|
|
215
|
-
#### `get-anchor-object`
|
|
216
|
-
|
|
217
|
-
List entities allowlisted as Timeline anchor objects (TimelineSetupInfo entries: value=entity api-name, label=display name). Allowlist is server-controlled — not all sObjects qualify; treat as the authoritative input list for the anchor selector.
|
|
218
|
-
|
|
219
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-anchor-object` — status: `proposed`
|
|
220
|
-
|
|
221
|
-
**Output:** List<TimelineSetupInfo>: each item carries value=entity api-name and label=display name. Server-controlled allowlist of Timeline-anchor-eligible entities.
|
|
222
|
-
|
|
223
|
-
**Notes:** wire_contract: Returns a list of `{value, label}` entries where `value` is the entity API name and
|
|
224
|
-
`label` is the human-readable entity label. The list is the Timeline-specific anchor
|
|
225
|
-
allowlist (Account, AccountContactRelation, Accreditation, ActionPlan, ActionVisibility,
|
|
226
|
-
and many more). Members of this list are the only valid values for the write-side
|
|
227
|
-
TimelineObjectName field on save-timeline-configuration; sending a value outside the
|
|
228
|
-
allowlist returns a server-side rejection. The full list is dynamic (governed by
|
|
229
|
-
org licensing + Health Cloud add-ons) — always call this step live, do not cache.
|
|
230
|
-
|
|
231
|
-
#### `get-timeline-object-definitions`
|
|
232
|
-
|
|
233
|
-
List saved Timeline definitions paged by offset (returns generic field-bag entries with anchor entity, label, isActive, RecordId). The Connect API /connect/timeline/metadata/configurations only fetches by fullNames[] — does NOT page across all configurations. Coverage_gap filed for missing offset-paged Connect API.
|
|
234
|
-
|
|
235
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-object-definitions` — status: `proposed`
|
|
236
|
-
|
|
237
|
-
**Inputs:**
|
|
238
|
-
|
|
239
|
-
- `offset` *(`int`)*
|
|
240
|
-
|
|
241
|
-
**Notes:** wire_contract: Returns an array of saved Timeline definitions, offset-paged. Each entry is a
|
|
242
|
-
field-bag: `{RecordId, MasterLabel, DeveloperName, BaseObject, IsActive,
|
|
243
|
-
LastModifiedDate, Definition}` where BaseObject is the anchor entity API name
|
|
244
|
-
and Definition is a JSON blob of the persisted config body. On a fresh Health
|
|
245
|
-
Cloud scratch org the endpoint returns 4 seeded configs all anchored on
|
|
246
|
-
Account: HC_Assessments, HC_Clinical_Data, HC_Engagement_Data,
|
|
247
|
-
HC_Patients_Life_Story — all IsActive=true. Agents building a clean-slate
|
|
248
|
-
Timeline flow on HC should treat these as immovable unless the caller
|
|
249
|
-
explicitly asks to deactivate + delete them (see delete-timeline-configuration
|
|
250
|
-
notes).; variant_paging: offset is the ONLY page control — there is no limit/pageSize input; the server
|
|
251
|
-
chooses the page size. Empty response (past the end) is `[]`, not an error.
|
|
252
|
-
Read-only endpoint; do NOT use for fetch-by-Id (no filter inputs). To resolve
|
|
253
|
-
a single definition by name, page from offset 0 and filter client-side, or
|
|
254
|
-
pass the RecordId through save-timeline-configuration's edit branch.; write_side_field_mapping: Read-side BaseObject maps directly to write-side BaseObject on save-timeline-configuration.config — NO field name transformation is needed when round-tripping a definition through edit. (The autonomous pass had inferred a BaseObject→TimelineObjectName transform; that was disproven live — sending TimelineObjectName is silently ignored and the controller rejects with "required fields are missing: TimelineObjectName". See save-timeline-configuration.required_fields_wall for the proven anchor key.); list_shape_correction: CORRECTION (proven): the list entries carry header fields only — {Id, MasterLabel, DeveloperName, BaseObject, IsActive, LastModifiedDate}. There is NO `Definition` blob in the list response (the inferred contract claimed one). To read a config's full persisted Definition (the timeline/anchorObject/events subtree), SOQL the TimelineObjectDefinition sObject directly: SELECT Id, MasterLabel, DeveloperName, BaseObject, IsActive, Definition FROM TimelineObjectDefinition WHERE DeveloperName=... (Definition is a textarea holding the JSON). The list `Id` is the value to pass as config.RecordId on the save (edit) branch and as the RecordId query param on delete-timeline-configuration.
|
|
255
|
-
|
|
256
|
-
#### `get-reference-fields-for-entity`
|
|
257
|
-
|
|
258
|
-
List reference (lookup) fields on entityApiName, filtered against existing Timeline definitionId to avoid event-type collisions. Used to wire event entities into a Timeline's event-list.
|
|
259
|
-
|
|
260
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-reference-fields-for-entity` — status: `proposed`
|
|
261
|
-
|
|
262
|
-
**Inputs:**
|
|
263
|
-
|
|
264
|
-
- `entityApiName` *(`String`)*
|
|
265
|
-
- `definitionId` *(`String`)*
|
|
266
|
-
|
|
267
|
-
**Depends on:** `get-anchor-object`
|
|
268
|
-
|
|
269
|
-
**Notes:** wire_contract: Returns an array of field-descriptor entries. Shape depends on the definitionId
|
|
270
|
-
input:
|
|
271
|
-
- definitionId empty ("") → array of 6 datetime fields on the entity
|
|
272
|
-
(ClosedDate, CreatedDate, LastModifiedDate, LastReferencedDate,
|
|
273
|
-
LastViewedDate, SystemModstamp). These are the fields eligible for use as
|
|
274
|
-
the Timeline event date anchor.
|
|
275
|
-
- definitionId set to a real config Id → array carries the same 6 datetime
|
|
276
|
-
fields PLUS the full config record itself appended as the final element
|
|
277
|
-
(Definition JSON blob + IsActive + MasterLabel + BaseObject + etc). This
|
|
278
|
-
union shape lets the edit screen render both the "field to pick" list and
|
|
279
|
-
the "current definition state" in a single call.
|
|
280
|
-
Agents constructing a fresh event should pass definitionId="". Agents editing an
|
|
281
|
-
existing event should pass the config Id and read both the field candidates and
|
|
282
|
-
the current definition state from one payload.
|
|
283
|
-
|
|
284
|
-
#### `get-related-entities-of-anchor-entity`
|
|
285
|
-
|
|
286
|
-
List event-eligible child entities for the anchor entityApiName (children with a lookup back to it). Each entry (TimelineSetupEventInfo): value=child entity api-name, label, referenceField=FK on the child.
|
|
287
|
-
|
|
288
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-related-entities-of-anchor-entity` — status: `proposed`
|
|
289
|
-
|
|
290
|
-
**Inputs:**
|
|
291
|
-
|
|
292
|
-
- `entityApiName` *(`String`)*
|
|
293
|
-
|
|
294
|
-
**Depends on:** `get-anchor-object`
|
|
295
|
-
|
|
296
|
-
**Output:** List<TimelineSetupEventInfo>: each item carries value=child entity api-name, label, referenceField=FK on the child pointing back to the anchor. Drives downstream get-event-object-details + get-related-entity-for-preview.
|
|
297
|
-
|
|
298
|
-
**Notes:** factory_gap: Endpoint returns HTTP 500 CONTROLLER_ERROR on a well-formed Account anchor input
|
|
299
|
-
(entityApiName=Account) on the current dev org. Reproduced across multiple
|
|
300
|
-
runs — indicates a defect in the related-entities lookup path, not a transient
|
|
301
|
-
state. Agents assembling a save-timeline-configuration payload that requires
|
|
302
|
-
the related-entity list must fall back to a client-side computation from
|
|
303
|
-
get-parent-objects-of-anchor-entity (parents) + Tooling API describe (children)
|
|
304
|
-
until the underlying issue is fixed server-side. This is not the same NPE as
|
|
305
|
-
get-related-crm-objects-of-anchor-entity — the failure mode here is a distinct
|
|
306
|
-
controller-layer error, not the app-context helper NPE.
|
|
307
|
-
|
|
308
|
-
#### `get-parent-objects-of-anchor-entity`
|
|
309
|
-
|
|
310
|
-
List parent entities the anchor entityApiName looks up to (TimelineSetupParentObjectInfo: value, label, domain). Throws CannotFetchParentObjectsError on null/blank input.
|
|
311
|
-
|
|
312
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-parent-objects-of-anchor-entity` — status: `proposed`
|
|
313
|
-
|
|
314
|
-
**Inputs:**
|
|
315
|
-
|
|
316
|
-
- `entityApiName` *(`String`)*
|
|
317
|
-
|
|
318
|
-
**Depends on:** `get-anchor-object`
|
|
319
|
-
|
|
320
|
-
**Notes:** wire_contract: Returns an array of `{fieldName, fieldLabel, referenceTo, referenceToLabel}` entries
|
|
321
|
-
describing the lookup parents on the anchor entity. For Account on Health Cloud orgs
|
|
322
|
-
the response contains 7 entries: MasterRecordId→Account, RecordTypeId→RecordType,
|
|
323
|
-
ParentId→Account, OwnerId→User, PersonContactId→Contact, PersonIndividualId→Individual,
|
|
324
|
-
OperatingHoursId→OperatingHours. The PersonContactId and PersonIndividualId tokens
|
|
325
|
-
appear when the org has Person Accounts enabled (typical for HC scratch orgs
|
|
326
|
-
provisioned with HealthCloudAddOn); agents must not assume their absence.; error_contract: Passing an empty string for entityApiName returns HTTP 500 with response message
|
|
327
|
-
"Something went wrong while loading objects. Try again." — the actual customer-facing
|
|
328
|
-
text, not a typed error code. Agents should validate entityApiName is non-empty
|
|
329
|
-
(a member of get-anchor-object) before dispatching this read.
|
|
330
|
-
|
|
331
|
-
#### `get-related-crm-objects-of-anchor-entity`
|
|
332
|
-
|
|
333
|
-
List CRM objects related to the anchor (entityApiName + entityLabel) for CDP/Data-Cloud event mapping. Each entry (TimelineSetupRelationshipObjectInfo) carries domain, domainLabel, relationship — used to map a CRM object to its DMO counterpart in a CDP-event Timeline.
|
|
334
|
-
|
|
335
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-related-crmobjects-of-anchor-entity` — status: `proposed`
|
|
336
|
-
|
|
337
|
-
**Inputs:**
|
|
338
|
-
|
|
339
|
-
- `entityApiName` *(`String`)*
|
|
340
|
-
- `entityLabel` *(`String`)*
|
|
341
|
-
|
|
342
|
-
**Depends on:** `get-anchor-object`, `get-data-spaces`
|
|
343
|
-
|
|
344
|
-
**Output:** List<TimelineSetupRelationshipObjectInfo>: each item carries value=CRM api-name, label, domain, domainLabel, relationship — the CRM-to-DMO mapping inputs for CDP-event Timelines.
|
|
345
|
-
|
|
346
|
-
**Notes:** factory_gap: Endpoint currently returns HTTP 500 with an internal null-pointer error in the
|
|
347
|
-
application-context helper on the target dev org. Reproduced on inputs
|
|
348
|
-
(entityApiName=Account, entityLabel=Account). The failure prevents the CDP-flow
|
|
349
|
-
UI screen from populating the related-CRM-object picker; agents attempting to
|
|
350
|
-
assemble a save-timeline-configuration payload for a CDP-backed event must fall
|
|
351
|
-
back to a manual lookup of related-CRM entities until the underlying null path
|
|
352
|
-
is guarded server-side. Companion endpoint get-cdp-screen-data-for-edit fails
|
|
353
|
-
with the same root cause — the fix likely applies to both.
|
|
354
|
-
|
|
355
|
-
#### `get-related-entity-for-preview`
|
|
356
|
-
|
|
357
|
-
Return a single TimelineSetupEventInfo for entityApiName (value, label, referenceField). Drives the wizard preview pane — call after get-related-entities-of-anchor-entity to detail one chosen event entity.
|
|
358
|
-
|
|
359
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-related-entity-for-preview` — status: `proposed`
|
|
360
|
-
|
|
361
|
-
**Inputs:**
|
|
362
|
-
|
|
363
|
-
- `entityApiName` *(`String`)*
|
|
364
|
-
|
|
365
|
-
**Depends on:** `get-related-entities-of-anchor-entity`
|
|
366
|
-
|
|
367
|
-
**Notes:** error_contract: Single-input GET with only entityApiName populated returns HTTP 500 with response
|
|
368
|
-
message "Unable to fetch Field to preview." Suggests the endpoint requires an
|
|
369
|
-
additional field-selection input beyond entityApiName — the preview surface is
|
|
370
|
-
field-scoped, not entity-scoped alone. Until the missing input is characterized,
|
|
371
|
-
agents should treat this step as advisory only; the preview UI can be built by
|
|
372
|
-
assembling field-descriptor data from get-event-object-details instead.
|
|
373
|
-
|
|
374
|
-
#### `get-event-object-details`
|
|
375
|
-
|
|
376
|
-
Bundle metadata for the event entity eventObjectName (TimelineSetupEventDetailsInfo): fields with data type, relatedLists, recordTypeDetails, indexedFieldsDetails. Composite shape — reconstructing from raw Tooling requires 3-4 calls + cross-record-type joins.
|
|
377
|
-
|
|
378
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-event-object-details` — status: `proposed`
|
|
379
|
-
|
|
380
|
-
**Inputs:**
|
|
381
|
-
|
|
382
|
-
- `eventObjectName` *(`String`)*
|
|
383
|
-
|
|
384
|
-
**Depends on:** `get-related-entities-of-anchor-entity`
|
|
385
|
-
|
|
386
|
-
**Output:** TimelineSetupEventDetailsInfo: fields[] (with data type), relatedLists[], recordTypeDetails[] (record-type metadata), indexedFieldsDetails (object). Inherits value+label+referenceField from TimelineSetupEventInfo.
|
|
387
|
-
|
|
388
|
-
**Notes:** wire_contract: Returns a rich JSON payload with four sub-shapes:
|
|
389
|
-
- relatedLists: array of child-relationship entries reachable from the event object
|
|
390
|
-
- recordTypeDetails: map of record-type-id → developer-name / label / defaultness
|
|
391
|
-
- fields: array of field-descriptor entries with type, label, referenceTo
|
|
392
|
-
- indexedFieldsDetails: array of picklist fields (Origin, Status, Priority, Reason,
|
|
393
|
-
Type on Case) with their allowed values enumerated
|
|
394
|
-
On Case anchored orgs this endpoint returns ~35 relatedLists and ~35 fields. The
|
|
395
|
-
indexedFieldsDetails picklist enumeration is the source of truth for populating the
|
|
396
|
-
save-timeline-configuration event-condition filter dropdowns — do NOT synthesize
|
|
397
|
-
picklist values elsewhere (Tooling PicklistValue is unfiltered and includes inactive
|
|
398
|
-
entries).
|
|
399
|
-
|
|
400
|
-
#### `get-dmo-object-api-name`
|
|
401
|
-
|
|
402
|
-
Return the DMO api-name (string) mapped to a CRM entityApiName (1:1 helper for the CDP path). Pairs with get-related-crm-objects-of-anchor-entity.
|
|
403
|
-
|
|
404
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-dmo-object-api-name` — status: `proposed`
|
|
405
|
-
|
|
406
|
-
**Inputs:**
|
|
407
|
-
|
|
408
|
-
- `entityApiName` *(`String`)*
|
|
409
|
-
|
|
410
|
-
**Depends on:** `get-related-crm-objects-of-anchor-entity`
|
|
411
|
-
|
|
412
|
-
**Notes:** wire_contract: Returns a raw string in body — the DMO (Data Model Object) API name mapped to the
|
|
413
|
-
given CRM entity. When the entity has no DMO mapping the body is the empty string
|
|
414
|
-
`""` (an empty JSON string literal, NOT null and NOT a 404). Agents should treat
|
|
415
|
-
an empty string as "no mapping present" and skip the CDP-event branch for that
|
|
416
|
-
anchor. On the target dev org Account currently returns `""` — Health Cloud DMO
|
|
417
|
-
binding is not yet configured.
|
|
418
|
-
|
|
419
|
-
#### `get-cdp-screen-data-for-edit`
|
|
420
|
-
|
|
421
|
-
Return a composite map keyed crmObjectOfAnchorEntity + dmoObjectApiName for the edit wizard's CDP screen. Inputs: entityApiName + entityLabel + selectedRelatedCrmObject. Consolidates two upstream calls (CRM-objects + DMO-name) into one composite.
|
|
422
|
-
|
|
423
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-cdp-screen-data-for-edit` — status: `proposed`
|
|
424
|
-
|
|
425
|
-
**Inputs:**
|
|
426
|
-
|
|
427
|
-
- `entityApiName` *(`String`)*
|
|
428
|
-
- `entityLabel` *(`String`)*
|
|
429
|
-
- `selectedRelatedCrmObject` *(`String`)*
|
|
430
|
-
|
|
431
|
-
**Depends on:** `get-anchor-object`, `get-related-crm-objects-of-anchor-entity`
|
|
432
|
-
|
|
433
|
-
**Output:** Map<String,Object> with two keys: crmObjectOfAnchorEntity, dmoObjectApiName — composite consolidating get-related-crm-objects-of-anchor-entity + get-dmo-object-api-name for the edit wizard.
|
|
434
|
-
|
|
435
|
-
**Notes:** factory_gap: Endpoint currently returns HTTP 500 with an internal null-pointer error in the
|
|
436
|
-
application-context helper on the target dev org. Reproduced on inputs
|
|
437
|
-
(entityApiName=Account, entityLabel=Account, selectedRelatedCrmObject=Contact).
|
|
438
|
-
This is the same root cause as get-related-crm-objects-of-anchor-entity — the
|
|
439
|
-
CDP-flow edit screen cannot be assembled until the underlying application-context
|
|
440
|
-
helper is fixed to guard against a null app-info reference.
|
|
441
|
-
|
|
442
|
-
### Write operations
|
|
443
|
-
|
|
444
|
-
#### `handle-timeline-toggle`
|
|
445
|
-
|
|
446
|
-
Enable the Timeline org preference. Only value=true is accepted; sending value=false throws CannotTurnPrefOffError (one-way enable invariant). Required once per org before any save-timeline-configuration call. AURA-IS-CANONICAL — no public Connect/Tooling/Metadata alternative; controller enforces the one-way control.
|
|
447
|
-
|
|
448
|
-
**Call:** `PATCH /headless/invoke/platform/timeline/handle-timeline-toggle` — status: `proposed`
|
|
449
|
-
|
|
450
|
-
**Inputs:**
|
|
451
|
-
|
|
452
|
-
- `value` *(`boolean`)* — Toggle the value preference on or off.
|
|
453
|
-
|
|
454
|
-
**Notes:** one_way_enable_invariant: This endpoint enables the org-level Timeline preference. It is a ONE-WAY
|
|
455
|
-
control: PATCH with the "enable" payload flips the pref from false → true
|
|
456
|
-
and returns 200. PATCH with a "disable" payload against an already-enabled
|
|
457
|
-
org is server-rejected with HTTP 500 CONTROLLER_ERROR "Timeline Org
|
|
458
|
-
Preference cannot be disabled." — there is no admin-callable path back to
|
|
459
|
-
false. Agents driving this step must confirm the caller understands the
|
|
460
|
-
commitment before dispatch, and must always precede the call with
|
|
461
|
-
get-timeline-org-pref to avoid an unnecessary write (idempotent on
|
|
462
|
-
already-true state, but wasteful).; companion_read: Chain with verify-handle-timeline-toggle (or get-timeline-org-pref directly)
|
|
463
|
-
immediately after the write to confirm true state before proceeding to
|
|
464
|
-
Timeline configuration writes.
|
|
465
|
-
|
|
466
|
-
#### `save-timeline-configuration`
|
|
467
|
-
|
|
468
|
-
Create a Timeline definition (omit RecordId in config) or update an existing one (supply RecordId). Throws DuplicateApiNameError when developer name collides. Returns the saved record id (Map<String,String>). AURA-IS-CANONICAL — no public CRUD on TimelineMetadataDefinition; coverage_gap filed.
|
|
469
|
-
|
|
470
|
-
**Call:** `PATCH /headless/invoke/platform/timeline/save-timeline-configuration` — status: `proposed`
|
|
471
|
-
|
|
472
|
-
**Inputs:**
|
|
473
|
-
|
|
474
|
-
- `config` *(`LinkedHashMap<String, Object>`)* — Value for config.
|
|
475
|
-
|
|
476
|
-
**Depends on:** `get-anchor-object`
|
|
477
|
-
|
|
478
|
-
**Notes:** required_fields_wall: CORRECTION (proven, supersedes the inferred key name): the create body is a `config` map whose keys map 1:1 to the TimelineObjectDefinition sObject fields, NOT a custom envelope. The minimum required-field wall is:
|
|
479
|
-
- MasterLabel (human-readable name)
|
|
480
|
-
- DeveloperName (api-safe token, unique across TimelineObjectDefinition;
|
|
481
|
-
DuplicateApiNameError on collision — page
|
|
482
|
-
get-timeline-object-definitions to check)
|
|
483
|
-
- BaseObject (anchor entity API name — MUST be a member of
|
|
484
|
-
get-anchor-object's allowlist). The anchor key is
|
|
485
|
-
`BaseObject`, NOT `TimelineObjectName`: sending
|
|
486
|
-
TimelineObjectName is silently ignored and the controller
|
|
487
|
-
rejects with "required fields are missing: TimelineObjectName".
|
|
488
|
-
- Definition (the events/anchor subtree — see create_body_shape; the
|
|
489
|
-
controller rejects with "Specify a definition for the
|
|
490
|
-
<label> timeline" when omitted)
|
|
491
|
-
IsActive (boolean) is optional at create; defaults per platform.; create_vs_update_branching: The same PATCH endpoint handles both create and update:
|
|
492
|
-
- Create: omit `config.RecordId` entirely. Response is `{"RecordId":
|
|
493
|
-
"<newId>"}` on success.
|
|
494
|
-
- Update: supply `config.RecordId` from a prior get-timeline-object-definitions
|
|
495
|
-
page. Response echoes the same RecordId.
|
|
496
|
-
Sending an empty-string RecordId (`""`) triggers the update branch and errors
|
|
497
|
-
because the empty Id does not resolve — always omit the key for create.; event_subtree_shape: SUPERSEDED — the inferred `config.events[]` shape (with EventObjectName / conditions[] / recordTypes[] at the event root) is NOT what the controller accepts. See `create_body_shape` for the proven structure: events live at config.Definition.timeline.events[], each wrapped in `oneToMany.eventObject`, the per-event condition key is `filters` (not `conditions`), and recordTypes nests inside eventObject.; create_body_shape: CORRECTION (proven, supersedes inferred `config.events[]` / `event_subtree_shape`): `config.Definition` is a nested MAP (LinkedHashMap), NOT a JSON string and NOT a bare `events` array. Passing a JSON string fails with "class java.lang.String cannot be cast to class java.util.LinkedHashMap". The proven structure is:
|
|
498
|
-
config:
|
|
499
|
-
MasterLabel: <str>
|
|
500
|
-
DeveloperName: <str, unique>
|
|
501
|
-
BaseObject: <anchor API name, e.g. Account>
|
|
502
|
-
IsActive: <bool>
|
|
503
|
-
Definition:
|
|
504
|
-
timeline:
|
|
505
|
-
anchorObject:
|
|
506
|
-
object: {entity: <BaseObject>, label: <label>, source: "", icon: ""}
|
|
507
|
-
age: {field: ""}
|
|
508
|
-
events:
|
|
509
|
-
- oneToMany:
|
|
510
|
-
eventObject:
|
|
511
|
-
name: <event object API name>
|
|
512
|
-
recordTypes: [] # array; caps at TimelineRecordTypeLimit (3)
|
|
513
|
-
fieldsToDisplay: [{field,label,type}, ...]
|
|
514
|
-
relatedlistsToDisplay: [{entity,label}, ...]
|
|
515
|
-
title: {field,label,type}
|
|
516
|
-
subTitle: {field,label,type}
|
|
517
|
-
filters: [] # per-event condition list (NOT "conditions");
|
|
518
|
-
# caps at TimelineConditionsLimit (3)
|
|
519
|
-
sort: {field,label,type}
|
|
520
|
-
anchorReferenceField: {field,label,type}
|
|
521
|
-
events[] length caps at TimelineEventLimit (5, from get-timeline-limits). The Definition field `type` values are the display types, mapped from the event object's field dataType: REFERENCE→EntityId, STRING→Text, PICKLIST→DynamicEnum, DATE/DATETIME→DateTime.; anchor_reference_field_rule: Each event's `anchorReferenceField.field` (and any reference in fieldsToDisplay) MUST be the real field API name, NOT the relationship alias. Create-time validation resolves against fieldApiName and rejects the alias with "Error resolving Entity/Field Names. Could not resolve fieldApiName: <alias> for entityApiName: <event>". Example: on CareProgramEnrollee use `AccountId` (the read side / stored Definition shows the alias "Account", which fails on create); on ClinicalEncounter the patient anchor is `PatientId` (labelled "Account ID"). Source the correct field names from get-event-object-details (fields[].value).; proven_north_star_example: PROVEN end-to-end (Account-anchored patient timeline showing Clinical Encounters + Care Plan events). config = {MasterLabel:"R2D2 Clinical + Care Plan", DeveloperName:"R2D2_CE_CarePlan_Verify", BaseObject:"Account", IsActive:true, Definition:{timeline:{anchorObject:{object:{entity:"Account", label:"Account",source:"",icon:""}}, age:{field:""}, events:[
|
|
522
|
-
{oneToMany:{eventObject:{name:"ClinicalEncounter",recordTypes:[],
|
|
523
|
-
fieldsToDisplay:[{field:"Status",label:"Status",type:"DynamicEnum"}],
|
|
524
|
-
relatedlistsToDisplay:[],title:{field:"Name",label:"Name",type:"Text"},
|
|
525
|
-
subTitle:{field:"Status",label:"Status",type:"DynamicEnum"}},filters:[],
|
|
526
|
-
sort:{field:"StartDate",label:"Start Date",type:"DateTime"},
|
|
527
|
-
anchorReferenceField:{field:"PatientId",label:"Account ID",type:"EntityId"}}},
|
|
528
|
-
{oneToMany:{eventObject:{name:"CareProgramEnrollee",recordTypes:[],
|
|
529
|
-
fieldsToDisplay:[{field:"Status",label:"Status",type:"DynamicEnum"}],
|
|
530
|
-
relatedlistsToDisplay:[],title:{field:"Name",label:"Name",type:"Text"},
|
|
531
|
-
subTitle:{field:"Status",label:"Status",type:"DynamicEnum"}},filters:[],
|
|
532
|
-
sort:{field:"CreatedDate",label:"Created Date",type:"DateTime"},
|
|
533
|
-
anchorReferenceField:{field:"AccountId",label:"Account ID",type:"EntityId"}}}
|
|
534
|
-
]}}}. Returned 200 {RecordId}. NOTE: Health Cloud has no standalone `CarePlan` object (get-event-object-details returns CONTROLLER_ERROR for CarePlan/CareVisit/HealthcareEncounter); the patient-level "care plan" event is CareProgramEnrollee (the patient's care-program enrollment). CareProgram references Account only as SponsorId (program sponsor, not the patient).; create_vs_update_confirmed: CONFIRMED live (was inferred): omit config.RecordId → create, response {RecordId:<newId>}. Supply config.RecordId → update, response echoes the same RecordId. Both branches share this one PATCH endpoint.
|
|
535
|
-
|
|
536
|
-
#### `set-timeline-configuration-active-status`
|
|
537
|
-
|
|
538
|
-
Toggle isActive on a saved Timeline definition (RecordId + isActivated). Activating makes the Timeline visible on its anchor entity's record pages. AURA-IS-CANONICAL — no public Tooling/sObject CRUD on the underlying record.
|
|
539
|
-
|
|
540
|
-
**Call:** `PATCH /headless/invoke/platform/timeline/set-timeline-configuration-active-status` — status: `proposed`
|
|
541
|
-
|
|
542
|
-
**Inputs:**
|
|
543
|
-
|
|
544
|
-
- `RecordId` *(`String`)* — Id of the record.
|
|
545
|
-
- `isActivated` *(`boolean`)* — Whether activated is enabled.
|
|
546
|
-
|
|
547
|
-
**Depends on:** `save-timeline-configuration`
|
|
548
|
-
|
|
549
|
-
**Notes:** wire_contract: Request body is a two-field envelope `{"RecordId": <configId>, "isActivated": <bool>}`.
|
|
550
|
-
On success returns HTTP 200 with body `{"LastModifiedDate": <ISO datetime>,
|
|
551
|
-
"RecordId": <configId>}`. Idempotent when `isActivated` matches the current state
|
|
552
|
-
(re-activating an already-active config returns 200 with a fresh LastModifiedDate).; error_contract: Unknown RecordId (well-formed 18-char Id that does not resolve) returns HTTP 500
|
|
553
|
-
with response message "Timeline configuration not found." Malformed Id shape
|
|
554
|
-
typically returns a validation error from the dispatcher layer before reaching
|
|
555
|
-
the controller. Agents should validate the RecordId format client-side before
|
|
556
|
-
dispatching this write.; companion_precondition_for_delete: This step is a mandatory precondition for delete-timeline-configuration on any
|
|
557
|
-
currently-active config: the delete controller rejects active configs. Call
|
|
558
|
-
set-timeline-configuration-active-status with isActivated=false first, then
|
|
559
|
-
delete-timeline-configuration.
|
|
560
|
-
|
|
561
|
-
### Verify operations
|
|
562
|
-
|
|
563
|
-
#### `verify-handle-timeline-toggle`
|
|
564
|
-
|
|
565
|
-
Read getTimelineOrgPref to confirm handle-timeline-toggle persisted. Expects true; a false read indicates the toggle did not commit.
|
|
566
|
-
|
|
567
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-org-pref`
|
|
568
|
-
|
|
569
|
-
**Depends on:** `handle-timeline-toggle`
|
|
570
|
-
|
|
571
|
-
#### `verify-save-timeline-configuration`
|
|
572
|
-
|
|
573
|
-
Page through saved Timeline definitions (offset=0) and confirm the RecordId returned from save-timeline-configuration is present with the expected masterLabel/fullName.
|
|
574
|
-
|
|
575
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-object-definitions`
|
|
576
|
-
|
|
577
|
-
**Depends on:** `save-timeline-configuration`
|
|
578
|
-
|
|
579
|
-
#### `verify-delete-timeline-configuration`
|
|
580
|
-
|
|
581
|
-
Page through saved Timeline definitions (offset=0) and confirm the RecordId from delete-timeline-configuration is no longer present.
|
|
582
|
-
|
|
583
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-object-definitions`
|
|
584
|
-
|
|
585
|
-
**Depends on:** `delete-timeline-configuration`
|
|
586
|
-
|
|
587
|
-
#### `verify-set-timeline-configuration-active-status`
|
|
588
|
-
|
|
589
|
-
Page saved Timeline definitions (offset=0) and confirm the RecordId touched by set-timeline-configuration-active-status now reports the expected isActive value. Pair-by-semantic-match: names don't share a stem so the deterministic verify-synth skipped this.
|
|
590
|
-
|
|
591
|
-
**Call:** `GET /headless/invoke/platform/timeline/get-timeline-object-definitions`
|
|
592
|
-
|
|
593
|
-
**Depends on:** `set-timeline-configuration-active-status`
|
|
594
|
-
|
|
595
|
-
### Destructive operations
|
|
596
|
-
|
|
597
|
-
#### `delete-timeline-configuration`
|
|
598
|
-
|
|
599
|
-
Delete a saved Timeline definition by RecordId. Destructive — no soft-delete. AURA-IS-CANONICAL — no public CRUD alternative.
|
|
600
|
-
|
|
601
|
-
**Call:** `DELETE /headless/invoke/platform/timeline/delete-timeline-configuration` — status: `proposed`
|
|
602
|
-
|
|
603
|
-
**Inputs:**
|
|
604
|
-
|
|
605
|
-
- `RecordId` *(`String`)*
|
|
606
|
-
|
|
607
|
-
**Depends on:** `get-timeline-object-definitions`
|
|
608
|
-
|
|
609
|
-
**Notes:** precondition_deactivate_first: Deleting an ACTIVE Timeline configuration is server-rejected. HTTP DELETE against
|
|
610
|
-
a config whose IsActive=true returns HTTP 500 with response message
|
|
611
|
-
"You can't delete the active timeline configuration <MasterLabel>. Deactivate
|
|
612
|
-
the configuration and try again." (with <MasterLabel> substituted from the
|
|
613
|
-
target record). This applies to ALL configs including the four pre-seeded HC
|
|
614
|
-
configs (HC_Assessments, HC_Clinical_Data, HC_Engagement_Data,
|
|
615
|
-
HC_Patients_Life_Story), all of which ship IsActive=true — meaning none of them
|
|
616
|
-
can be removed by a single delete call. To remove any active config, agents
|
|
617
|
-
must first call set-timeline-configuration-active-status with isActivated=false
|
|
618
|
-
for that RecordId, then re-issue delete-timeline-configuration.; seeded_hc_configs_are_active: On Health Cloud orgs the four pre-seeded HC configs (HC_Assessments,
|
|
619
|
-
HC_Clinical_Data, HC_Engagement_Data, HC_Patients_Life_Story) all ship
|
|
620
|
-
IsActive=true. Attempts to delete any of them fail with the message above until
|
|
621
|
-
deactivation. This is a Health-Cloud-specific gotcha for admins scripting a
|
|
622
|
-
clean-slate Timeline setup.
|