@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.
Files changed (349) hide show
  1. package/package.json +1 -1
  2. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +2 -23
  3. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +3 -13
  4. package/skills/field-service-mobile-branding-configure/SKILL.md +3 -17
  5. package/skills/field-service-objective-designer-configure/SKILL.md +379 -72
  6. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +537 -10
  7. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +1093 -65
  8. package/skills/field-service-sobject-create-configure/SKILL.md +213 -13
  9. package/skills/field-service-voice-to-form-configure/SKILL.md +11 -40
  10. package/skills/field-service-work-rule-designer-configure/SKILL.md +95 -121
  11. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +0 -312
  12. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +0 -64
  13. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +0 -46
  14. package/skills/automation-company-profile-info-query/SKILL.md +0 -51
  15. package/skills/automation-digital-wallet-configure/SKILL.md +0 -689
  16. package/skills/automation-flow-coordinate/SKILL.md +0 -95
  17. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +0 -1569
  18. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +0 -96
  19. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +0 -23
  20. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +0 -31
  21. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +0 -179
  22. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +0 -13
  23. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +0 -83
  24. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +0 -69
  25. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +0 -274
  26. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +0 -192
  27. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +0 -130
  28. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +0 -92
  29. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +0 -88
  30. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +0 -152
  31. package/skills/automation-flow-coordinate/references/elements/start/start.md +0 -539
  32. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +0 -152
  33. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +0 -497
  34. package/skills/automation-flow-coordinate/references/recipes/author/author.md +0 -868
  35. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +0 -300
  36. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +0 -292
  37. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +0 -323
  38. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +0 -109
  39. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +0 -219
  40. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +0 -180
  41. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +0 -175
  42. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +0 -255
  43. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +0 -212
  44. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +0 -171
  45. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +0 -786
  46. package/skills/automation-flow-coordinate/references/shared/end/end.md +0 -267
  47. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +0 -69
  48. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +0 -80
  49. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +0 -116
  50. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +0 -321
  51. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +0 -320
  52. package/skills/automation-flow-coordinate/references/shared/server-functions.md +0 -597
  53. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +0 -69
  54. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +0 -78
  55. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +0 -373
  56. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +0 -273
  57. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +0 -259
  58. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +0 -369
  59. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +0 -542
  60. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  61. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +0 -349
  62. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +0 -505
  63. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +0 -380
  64. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +0 -567
  65. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  66. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +0 -360
  67. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +0 -539
  68. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +0 -358
  69. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +0 -602
  70. package/skills/commerce-b2b-store-configure/SKILL.md +0 -251
  71. package/skills/commerce-credit-memo-create/SKILL.md +0 -139
  72. package/skills/commerce-delivery-business-hours-configure/SKILL.md +0 -277
  73. package/skills/commerce-delivery-estimation-apply/SKILL.md +0 -155
  74. package/skills/commerce-delivery-estimation-configure/SKILL.md +0 -377
  75. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +0 -174
  76. package/skills/commerce-estimate-bopis-query/SKILL.md +0 -279
  77. package/skills/commerce-estimate-delivery-date-query/SKILL.md +0 -349
  78. package/skills/commerce-fees-apply/SKILL.md +0 -227
  79. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +0 -200
  80. package/skills/commerce-guest-buyer-create/SKILL.md +0 -173
  81. package/skills/commerce-location-bopis-configure/SKILL.md +0 -378
  82. package/skills/commerce-location-business-hours-configure/SKILL.md +0 -235
  83. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +0 -309
  84. package/skills/commerce-location-graph-integrate/SKILL.md +0 -131
  85. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +0 -755
  86. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +0 -331
  87. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +0 -579
  88. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +0 -626
  89. package/skills/commerce-merchant-catalog-configure/SKILL.md +0 -614
  90. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +0 -368
  91. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +0 -118
  92. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +0 -65
  93. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +0 -90
  94. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +0 -72
  95. package/skills/commerce-merchant-insights-query/SKILL.md +0 -279
  96. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +0 -656
  97. package/skills/commerce-order-summary-change-apply/SKILL.md +0 -375
  98. package/skills/commerce-product-details-get/SKILL.md +0 -363
  99. package/skills/commerce-product-search/SKILL.md +0 -563
  100. package/skills/commerce-react-storefront-create/SKILL.md +0 -350
  101. package/skills/commerce-return-order-summary-create/SKILL.md +0 -513
  102. package/skills/commerce-search-relevance-analyze/SKILL.md +0 -757
  103. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +0 -274
  104. package/skills/communications-initial-setup-configure/SKILL.md +0 -630
  105. package/skills/communications-multisite-configure/SKILL.md +0 -571
  106. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +0 -74
  107. package/skills/communications-smb-fiber-catalog-create/SKILL.md +0 -413
  108. package/skills/communications-tmf-integrate/SKILL.md +0 -1368
  109. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +0 -448
  110. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +0 -269
  111. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +0 -271
  112. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +0 -382
  113. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +0 -373
  114. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +0 -389
  115. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +0 -338
  116. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +0 -547
  117. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +0 -346
  118. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +0 -1110
  119. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +0 -224
  120. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +0 -418
  121. package/skills/crm-analytics-dashboards-configure/SKILL.md +0 -731
  122. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +0 -233
  123. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +0 -184
  124. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +0 -167
  125. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +0 -55
  126. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +0 -1350
  127. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +0 -1862
  128. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +0 -83
  129. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +0 -81
  130. package/skills/data360-activation-create/SKILL.md +0 -104
  131. package/skills/data360-activation-external-platform-get/SKILL.md +0 -49
  132. package/skills/data360-activation-target-create/SKILL.md +0 -93
  133. package/skills/data360-activation-v2-create/SKILL.md +0 -456
  134. package/skills/data360-audience-dmo-get/SKILL.md +0 -38
  135. package/skills/data360-calculated-affinity-create/SKILL.md +0 -82
  136. package/skills/data360-calculated-insight-create/SKILL.md +0 -148
  137. package/skills/data360-catalog-metadata-create/SKILL.md +0 -183
  138. package/skills/data360-code-extension-create/SKILL.md +0 -115
  139. package/skills/data360-communication-capping-create/SKILL.md +0 -227
  140. package/skills/data360-connection-create/SKILL.md +0 -491
  141. package/skills/data360-content-lens-create/SKILL.md +0 -181
  142. package/skills/data360-data-action-create/SKILL.md +0 -126
  143. package/skills/data360-data-action-target-create/SKILL.md +0 -181
  144. package/skills/data360-data-clean-room-create/SKILL.md +0 -238
  145. package/skills/data360-data-governance-create/SKILL.md +0 -746
  146. package/skills/data360-data-graph-create/SKILL.md +0 -82
  147. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +0 -38
  148. package/skills/data360-data-lake-object-create/SKILL.md +0 -207
  149. package/skills/data360-data-model-object-catalog-get/SKILL.md +0 -49
  150. package/skills/data360-data-model-object-create/SKILL.md +0 -128
  151. package/skills/data360-data-model-object-mapping-create/SKILL.md +0 -106
  152. package/skills/data360-data-space-create/SKILL.md +0 -161
  153. package/skills/data360-data-streams-create/SKILL.md +0 -324
  154. package/skills/data360-engagement-signal-get/SKILL.md +0 -38
  155. package/skills/data360-experiment-create/SKILL.md +0 -82
  156. package/skills/data360-goal-based-campaign-create/SKILL.md +0 -192
  157. package/skills/data360-harmonization-process-history-get/SKILL.md +0 -38
  158. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +0 -84
  159. package/skills/data360-identity-resolution-create/SKILL.md +0 -115
  160. package/skills/data360-intelligent-document-processing-create/SKILL.md +0 -148
  161. package/skills/data360-knowledge-graph-construction-create/SKILL.md +0 -93
  162. package/skills/data360-knowledge-graph-create/SKILL.md +0 -216
  163. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +0 -475
  164. package/skills/data360-machine-learning-mcp-configure/SKILL.md +0 -697
  165. package/skills/data360-multi-org-mcp-configure/SKILL.md +0 -117
  166. package/skills/data360-secondary-index-mcp-configure/SKILL.md +0 -126
  167. package/skills/data360-segment-mcp-configure/SKILL.md +0 -159
  168. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +0 -93
  169. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +0 -93
  170. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +0 -93
  171. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +0 -38
  172. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +0 -62
  173. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +0 -38
  174. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +0 -93
  175. package/skills/data360-semantic-model-mcp-configure/SKILL.md +0 -115
  176. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +0 -38
  177. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +0 -73
  178. package/skills/experience-afv-query/SKILL.md +0 -234
  179. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +0 -63
  180. package/skills/experience-apex-components-configure/SKILL.md +0 -69
  181. package/skills/experience-apex-pages-configure/SKILL.md +0 -107
  182. package/skills/experience-app-home-configure/SKILL.md +0 -76
  183. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +0 -58
  184. package/skills/experience-briefcase-configure/SKILL.md +0 -287
  185. package/skills/experience-community-flexi-page-list-create/SKILL.md +0 -74
  186. package/skills/experience-community-template-definition-list-query/SKILL.md +0 -48
  187. package/skills/experience-community-theme-definition-list-query/SKILL.md +0 -38
  188. package/skills/experience-content-assets-configure/SKILL.md +0 -86
  189. package/skills/experience-custom-domain-create/SKILL.md +0 -727
  190. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +0 -41
  191. package/skills/experience-field-service-app-builder-configure/SKILL.md +0 -187
  192. package/skills/experience-flow-category-configure/SKILL.md +0 -117
  193. package/skills/experience-formula-configure/SKILL.md +0 -358
  194. package/skills/experience-global-actions-configure/SKILL.md +0 -69
  195. package/skills/experience-global-publisher-layouts-configure/SKILL.md +0 -79
  196. package/skills/experience-instrumentation-configure/SKILL.md +0 -64
  197. package/skills/experience-lex-engagement-configure/SKILL.md +0 -50
  198. package/skills/experience-lightning-bolt-open/SKILL.md +0 -12
  199. package/skills/experience-lightning-out-configure/SKILL.md +0 -129
  200. package/skills/experience-lightning-preview-configure/SKILL.md +0 -67
  201. package/skills/experience-lightning-types-query/SKILL.md +0 -98
  202. package/skills/experience-malware-scan-configure/SKILL.md +0 -71
  203. package/skills/experience-my-salesforce-configure/SKILL.md +0 -126
  204. package/skills/experience-navigation-menus-configure/SKILL.md +0 -235
  205. package/skills/experience-notification-types-configure/SKILL.md +0 -206
  206. package/skills/experience-notifications-configure/SKILL.md +0 -75
  207. package/skills/experience-record-discovery-query/SKILL.md +0 -227
  208. package/skills/experience-regenerate-previews-open/SKILL.md +0 -94
  209. package/skills/experience-sales-cloud-mab-configure/SKILL.md +0 -254
  210. package/skills/experience-schema-builder-open/SKILL.md +0 -38
  211. package/skills/experience-simple-record-home-configure/SKILL.md +0 -110
  212. package/skills/experience-static-resources-configure/SKILL.md +0 -74
  213. package/skills/field-service-setup-coordinate/SKILL.md +0 -62
  214. package/skills/field-service-work-plan-configure/SKILL.md +0 -253
  215. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +0 -180
  216. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +0 -196
  217. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +0 -106
  218. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +0 -96
  219. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +0 -111
  220. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +0 -250
  221. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +0 -122
  222. package/skills/fsc-digital-origination-coordinate/SKILL.md +0 -653
  223. package/skills/fsc-digital-origination-demo-run/SKILL.md +0 -225
  224. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +0 -112
  225. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +0 -396
  226. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +0 -336
  227. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +0 -208
  228. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +0 -375
  229. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +0 -83
  230. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +0 -248
  231. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +0 -206
  232. package/skills/fsc-document-checklist-settings-configure/SKILL.md +0 -57
  233. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +0 -148
  234. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +0 -1430
  235. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +0 -471
  236. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +0 -429
  237. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +0 -150
  238. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +0 -123
  239. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +0 -82
  240. package/skills/fsc-product-act3-attributes-create/SKILL.md +0 -249
  241. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +0 -196
  242. package/skills/fsc-product-act5-considerations-get/SKILL.md +0 -44
  243. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +0 -384
  244. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +0 -144
  245. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +0 -107
  246. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +0 -189
  247. package/skills/fsc-stage-management-definition-create/SKILL.md +0 -108
  248. package/skills/fsc-stage-management-permissions-assign/SKILL.md +0 -143
  249. package/skills/fsc-stage-management-transitions-configure/SKILL.md +0 -139
  250. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +0 -135
  251. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +0 -134
  252. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +0 -136
  253. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +0 -134
  254. package/skills/health-cloud-care-requests-create/SKILL.md +0 -178
  255. package/skills/health-cloud-initial-configure/SKILL.md +0 -511
  256. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +0 -1374
  257. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +0 -924
  258. package/skills/health-cloud-referral-management-coordinate/SKILL.md +0 -513
  259. package/skills/health-cloud-timeline-configure/SKILL.md +0 -622
  260. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +0 -135
  261. package/skills/industries-account-score-settings-query/SKILL.md +0 -78
  262. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +0 -177
  263. package/skills/industries-ad-product-availability-search/SKILL.md +0 -399
  264. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +0 -628
  265. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +0 -73
  266. package/skills/industries-atm-settings-starter-configure/SKILL.md +0 -76
  267. package/skills/industries-batch-document-ai-configure/SKILL.md +0 -196
  268. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +0 -71
  269. package/skills/industries-branch-management-settings-configure/SKILL.md +0 -89
  270. package/skills/industries-bre-decision-table-access-configure/SKILL.md +0 -367
  271. package/skills/industries-brokerage-settings-configure/SKILL.md +0 -41
  272. package/skills/industries-calendar-sync-settings-configure/SKILL.md +0 -89
  273. package/skills/industries-care-request-settings-configure/SKILL.md +0 -218
  274. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +0 -54
  275. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +0 -380
  276. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +0 -216
  277. package/skills/industries-catalog-process-intake-configure/SKILL.md +0 -219
  278. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +0 -153
  279. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +0 -168
  280. package/skills/industries-cds-general-settings-configure/SKILL.md +0 -69
  281. package/skills/industries-claim-financial-settings-configure/SKILL.md +0 -169
  282. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +0 -136
  283. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +0 -105
  284. package/skills/industries-collection-plan-settings-configure/SKILL.md +0 -132
  285. package/skills/industries-comms-service-console-settings-configure/SKILL.md +0 -159
  286. package/skills/industries-compliance-configure/SKILL.md +0 -102
  287. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +0 -76
  288. package/skills/industries-contact-center-app-layout-configure/SKILL.md +0 -88
  289. package/skills/industries-contact-center-components-configure/SKILL.md +0 -96
  290. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +0 -95
  291. package/skills/industries-contact-center-user-access-assign/SKILL.md +0 -96
  292. package/skills/industries-course-waitlist-config-configure/SKILL.md +0 -162
  293. package/skills/industries-crisis-center-settings-configure/SKILL.md +0 -84
  294. package/skills/industries-custom-object-settings-configure/SKILL.md +0 -94
  295. package/skills/industries-data-cloud-integration-configure/SKILL.md +0 -88
  296. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +0 -245
  297. package/skills/industries-decision-matrix-builder-configure/SKILL.md +0 -78
  298. package/skills/industries-decision-table-hbase-configure/SKILL.md +0 -87
  299. package/skills/industries-decision-table-version-configure/SKILL.md +0 -74
  300. package/skills/industries-decision-tables-builder-configure/SKILL.md +0 -253
  301. package/skills/industries-decision-tables-configure/SKILL.md +0 -439
  302. package/skills/industries-energy-utilities-configure/SKILL.md +0 -251
  303. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +0 -1008
  304. package/skills/industries-eu-new-connections-configure/SKILL.md +0 -30
  305. package/skills/industries-explainability-msg-template-configure/SKILL.md +0 -135
  306. package/skills/industries-expression-set-message-token-configure/SKILL.md +0 -135
  307. package/skills/industries-field-service-settings-configure/SKILL.md +0 -82
  308. package/skills/industries-form-framework-settings-configure/SKILL.md +0 -30
  309. package/skills/industries-fsc-ai-settings-configure/SKILL.md +0 -57
  310. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +0 -172
  311. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +0 -61
  312. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +0 -58
  313. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +0 -103
  314. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +0 -117
  315. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +0 -99
  316. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +0 -120
  317. package/skills/industries-fundraising-rfm-configure/SKILL.md +0 -128
  318. package/skills/industries-fundraising-settings-configure/SKILL.md +0 -145
  319. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +0 -299
  320. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +0 -87
  321. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +0 -58
  322. package/skills/industries-hc-score-category-settings-configure/SKILL.md +0 -167
  323. package/skills/industries-health-engagement-settings-configure/SKILL.md +0 -218
  324. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +0 -131
  325. package/skills/industries-home-health-bundling-policy-create/SKILL.md +0 -50
  326. package/skills/industries-home-health-entity-labels-configure/SKILL.md +0 -29
  327. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +0 -71
  328. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +0 -27
  329. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +0 -80
  330. package/skills/industries-home-health-guided-setup-configure/SKILL.md +0 -836
  331. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +0 -55
  332. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +0 -61
  333. package/skills/industries-home-health-licenses-assign/SKILL.md +0 -27
  334. package/skills/industries-home-health-operating-hours-create/SKILL.md +0 -40
  335. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +0 -41
  336. package/skills/industries-home-health-service-objective-create/SKILL.md +0 -22
  337. package/skills/industries-home-health-skills-create/SKILL.md +0 -31
  338. package/skills/industries-home-health-users-create/SKILL.md +0 -29
  339. package/skills/industries-icm-act3-toggles-configure/SKILL.md +0 -198
  340. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +0 -361
  341. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +0 -550
  342. package/skills/industries-integrated-care-management-configure/SKILL.md +0 -168
  343. package/skills/industries-object-enablement-configure/SKILL.md +0 -86
  344. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +0 -64
  345. package/skills/integration-apex-settings-configure/SKILL.md +0 -61
  346. package/skills/marketing-e360-email-archiving-configure/SKILL.md +0 -73
  347. package/skills/platform-custom-permissions-configure/SKILL.md +0 -687
  348. package/skills/platform-label-workbench-import-create/SKILL.md +0 -67
  349. package/skills/platform-privacy-agent-settings-configure/SKILL.md +0 -752
@@ -1,630 +0,0 @@
1
- ---
2
- name: communications-initial-setup-configure
3
- description: "Perform the initial setup for Communications Cloud on a Salesforce org that already has Revenue Cloud base setup in place. Trigger when users mention \"set up Communications Cloud\", \"Comms Cloud initial setup\", \"provision Comms Cloud for a new org\", \"assign Comms Cloud permission sets\", \"deploy the Comms Product Discovery context definition\", or \"create the Comms discovery pricing procedure\". Assumes Communications Cloud add-on licenses are provisioned. Runs step-by-step against small-payload Connect APIs. Three outcomes: (1) assigns the three required permission sets on a target user; (2) builds `customcommsproductdiscovery` by extending `CommsProductDiscoveryContext__stdctx` via POST `/connect/context-definitions`, applies the small hardcoded delta through POST `/connect/context-node-mappings/{id}/context-attribute-mappings`, promotes a default mapping, then activates with PATCH `{isActive: true}`; (3) authors the `Comms_Product_Discovery_Pricing_Procedure` ExpressionSetDefinition (bound to the CD from outcome 2) in a single POST to `/connect/business-rules/expression-set` carrying the full V1 version body — 2 steps (`ListPrice`, `PricingSetting`) plus 1 Constant variable — since the Connect API accepts inline `versions[].steps[].customElement.parameters` on the create call and PATCH of that version content is not supported."
4
- metadata:
5
- version: "1.0"
6
- ---
7
-
8
- # Communications Cloud — Initial Setup
9
-
10
- ## When to Use This Skill
11
-
12
- Perform the initial setup for Communications Cloud on a Salesforce org that
13
- already has Revenue Cloud base/initial setup complete and the Communications
14
- Cloud add-on licenses provisioned. Three outcomes, all dispatched through
15
- `/services/data/v67.0/*` REST — no multipart, no CLI shell-out:
16
-
17
- 1. Assign (or confirm) the three Comms Cloud sales permission sets on the
18
- target user: `CMESalesStandardPermissionSet` (label "CME Sales Features"),
19
- `CommsCloudSalesFeatures` (label "Revenue Cloud for Communications
20
- Features"), and `SimpleCsvDataImport` (label "Basic CSV Data Import"). The
21
- assignments are idempotent — every write is preceded by a "check what's
22
- already assigned" SOQL and only missing rows are created.
23
-
24
- 2. Build `customcommsproductdiscovery` — an ACTIVE extension of
25
- `CommsProductDiscoveryContext__stdctx` — through a fixed script of Connect
26
- API calls. Extend via POST `/connect/context-definitions`, apply the one
27
- hardcoded delta below (3 new attribute-mappings on shared base-inherited
28
- mappings, hydrating `Account.id` from `Account.Id`; 0 new attributes, 0
29
- new context-mappings, 0 new node-mappings, 0 new tags, 0 new nodes), then
30
- flip `isActive=true` after PATCHing one mapping to `isDefault=true`. Each
31
- POST is a JSON body under a few KB.
32
-
33
- 3. Author `Comms_Product_Discovery_Pricing_Procedure` — a
34
- `usageType=DefaultPricing`, `interfaceSourceType=PricingProcedure`
35
- ExpressionSetDefinition bound to `customcommsproductdiscovery` — in a
36
- SINGLE `POST /connect/business-rules/expression-set` carrying the full V1
37
- version content inline (`versions[0].steps[]` + `versions[0].variables[]`)
38
- with `versions[0].enabled=true` so V1 is ACTIVE on the 201 response. The
39
- body ships 2 hardcoded steps in this order: `PricingSetting`
40
- (`sequenceNumber=1`, `actionType=PricingSettings`) then `ListPrice`
41
- (`sequenceNumber=2`, `actionType=ListPrice`), plus 1 Constant variable
42
- (`Constant_UnitPrice_Price_Book_Entry_Decision_Table_v2_LP`). Each step's
43
- parameter list is fully specified in Step 8 below. Payload is a few KB.
44
-
45
- Naming: "Communications Cloud" (or "Comms Cloud" for short). The three
46
- permission-set Names above are the identifiers to write; the human labels are
47
- for operator-facing messages only. `customcommsproductdiscovery` is the
48
- developer name AND the label — they match on this extension. On the Connect
49
- API input rep the label field is `name`, and the parent-CD pointer is
50
- `baseReference`; the metadata-flavored `masterLabel` /
51
- `inheritedFromDeveloperName` names do NOT apply here.
52
-
53
- **Out of scope for this version:** promotions
54
- (`promotionMappingwithcustom` mapping and any promotion-only attributes such
55
- as `SalesTransaction.Channel__c`), channel attributes
56
- (`Account.channelFinal__c`), the `ConsumerSalesExtended266` CD, the
57
- Location-Based Pricing surface, and Rate Management enablement. Rank
58
- promotion or multi-version selection for the pricing procedure is also out
59
- of scope — the recipe writes exactly one active V1 (`rank=1`,
60
- `enabled=true`). If the user asks for any of those, say so explicitly.
61
-
62
- ## Workflow
63
-
64
- Eight steps against a single org. Steps 1–5 are plain sObject/REST (SOQL +
65
- PermissionSetAssignment writes). Steps 6–7 build and verify the
66
- `customcommsproductdiscovery` CD via the Connect API extend-then-augment
67
- loop. Step 8 authors the `Comms_Product_Discovery_Pricing_Procedure`
68
- ExpressionSetDefinition against that CD in one shot on the BRE Connect API.
69
- All writes route through native `/services/data/v67.0/*` endpoints.
70
-
71
- ── Steps 1–5 — permission-set assignment (idempotent) ─────────────────────
72
-
73
- `sor_input: target_user_id` — 18-char User Id who should receive the
74
- permission sets. When omitted, the skill resolves the running (authenticated)
75
- user's Id and assigns to them. Either `dispatch_readonly` on
76
- `GET /services/data/v67.0/` (returns the identity URL for the current user)
77
- or `SELECT Id FROM User WHERE Username='<running username>'` is an acceptable
78
- resolver.
79
-
80
- 1. **Resolve the three Comms permission set Names to Ids** —
81
- `SELECT Id, Name FROM PermissionSet WHERE Name IN ('CMESalesStandardPermissionSet','CommsCloudSalesFeatures','SimpleCsvDataImport')`.
82
- Any Name that does NOT resolve means the backing add-on license isn't
83
- provisioned on this org — record it as a **partial-success gap** and
84
- continue with the ones that do resolve.
85
-
86
- 2. **Resolve the assignee** — either the caller-supplied `target_user_id` or
87
- the running user's Id.
88
-
89
- 3. **Check existing assignments (idempotency gate)** —
90
- `SELECT PermissionSetId, PermissionSet.Name FROM PermissionSetAssignment WHERE AssigneeId = <assignee_id> AND PermissionSet.Name IN (…the same three…)`.
91
- The to-assign list for Step 4 is `(Step 1 Ids) − (Step 3 Ids already assigned)`.
92
-
93
- 4. **Assign the missing permission sets** —
94
- `POST /services/data/v67.0/sobjects/PermissionSetAssignment` with body
95
- `{"AssigneeId": "<assignee_id>", "PermissionSetId": "<perm_set_id>"}`. One
96
- call per missing permission set.
97
-
98
- 5. **Verify** — re-run the Step 3 SOQL and confirm every Name that resolved
99
- in Step 1 appears in the assignee's rows.
100
-
101
- ── Steps 6–7 — build `customcommsproductdiscovery` via Connect APIs ──────
102
-
103
- The delta from base `CommsProductDiscoveryContext__stdctx` to the target
104
- extension `customcommsproductdiscovery` is baked into Step 6e below — the
105
- skill does NOT re-diff at runtime. Step 6 is a fixed sequence: extend →
106
- resolve draft Ids from the extend response → apply the one hardcoded delta →
107
- activate. The target shape is exactly:
108
-
109
- - **0 new context-attributes**
110
- - **0 new context-tags**
111
- - **0 new top-level mappings**
112
- - **3 new attribute-mappings on shared base-inherited mappings** (all on
113
- their `Account` node-mapping, all `id` hydrated from `Account.Id`, on
114
- `QuoteProductDiscoveryMapping`, `OrderProductDiscoveryMapping`, and
115
- `ProductDiscoveryMapping`)
116
- - **0 new context-nodes**
117
-
118
- Idempotency: Step 6b (skip-if-present) short-circuits when the extension
119
- already exists and is active. If it exists inactive with some deltas already
120
- applied, running Step 6e will re-POST each hardcoded delta; each POST
121
- endpoint returns 400 on duplicate name / Id — treat 400 with a "duplicate"
122
- or "already exists" body as a no-op signal and continue.
123
-
124
- 6. **Build `customcommsproductdiscovery` (extend + augment).**
125
-
126
- 6a. **Discover base CD id.** `GET /services/data/v67.0/connect/context-definitions`
127
- and read out the record for
128
- `developerName=CommsProductDiscoveryContext__stdctx`. Capture
129
- `contextDefinitionId` — for a stock CD this is the developer name
130
- itself (`CommsProductDiscoveryContext__stdctx`), NOT an `11ODX…`
131
- key-prefix id. The `11ODX…` shape applies only to custom / extension
132
- CDs (Step 6c's response and Step 6b when the extension already exists).
133
-
134
- 6b. **Skip-if-present gate.** `GET /services/data/v67.0/connect/context-definitions`
135
- filtered by `developerName=customcommsproductdiscovery`. If it already
136
- exists and `isActive=true`, jump to Step 7 (idempotent short-circuit).
137
- Otherwise, if it exists inactive, capture its id and skip the extend
138
- in 6c — proceed directly to 6d.
139
-
140
- 6c. **Extend the base CD.** `POST /services/data/v67.0/connect/context-definitions`
141
- with body
142
- ```json
143
- {
144
- "developerName": "customcommsproductdiscovery",
145
- "name": "customcommsproductdiscovery",
146
- "baseReference": "CommsProductDiscoveryContext__stdctx"
147
- }
148
- ```
149
- Response echoes the new `contextDefinitionId` (`11ODX…`) and
150
- `activeVersionId` (`11pDX…`) for the draft. The draft is inactive by
151
- default — do NOT send `isActive`. The input rep field is
152
- `baseReference` (not `inheritedFromDeveloperName`), and the label
153
- field is `name` (not `masterLabel`); sending
154
- `masterLabel` / `inheritedFromDeveloperName` / `isActive` returns
155
- `Unrecognized field` 400s from the input rep on v67.
156
-
157
- 6d. **Fetch the draft to resolve org-specific Ids.**
158
- `GET /services/data/v67.0/connect/context-definitions/{draftId}` —
159
- returns the full nested tree under
160
- `contextDefinitionVersionList[0]`. The draft's `contextNodes[]` and
161
- `contextMappings[]` are copied from the base, so before posting the
162
- hardcoded delta below resolve these org-specific Ids from the draft
163
- response:
164
- - Base attribute Id on the draft's `Account` node needed by the
165
- shared-mapping loop:
166
- - `id` on the draft's `Account` node → attribute Id (`11nDX…`).
167
- (Look this up by `name` on `contextNodes[*].attributes[*]`.)
168
- - The three shared-mapping node-mapping Ids (`11bDX…`) on the draft —
169
- needed to POST the shared-mapping attribute-mappings:
170
- - `QuoteProductDiscoveryMapping / Account` node-mapping Id
171
- - `OrderProductDiscoveryMapping / Account` node-mapping Id
172
- - `ProductDiscoveryMapping / Account` node-mapping Id
173
- (Walk `contextMappings[*].contextNodeMappings[*]`, filter by mapping
174
- `name` + node-mapping `contextNodeName=Account`, read out
175
- `contextNodeMappingId`.)
176
-
177
- 6e. **Apply the one hardcoded delta** — 3 attribute-mapping POSTs under
178
- the shared base-inherited mappings' `Account` node-mappings. Every
179
- Connect POST endpoint takes a LIST-wrapper input rep. Halt the whole
180
- step on any 4xx that is not a "duplicate" / "already exists" body.
181
-
182
- **6e-i. Create the 3 shared-mapping attribute-mappings on the
183
- `Account` node-mapping of each shared base-inherited mapping.**
184
-
185
- Parents are the draft's `Account` node-mapping Ids under
186
- `QuoteProductDiscoveryMapping` / `OrderProductDiscoveryMapping` /
187
- `ProductDiscoveryMapping` (resolved in 6d). The attribute Id is the
188
- draft's `Account.id` (base attribute — every org has it).
189
-
190
- **`ProductDiscoveryMapping / Account`** — 1 attribute-mapping:
191
- ```json
192
- { "contextAttributeMappings": [{"contextAttributeId": "<Account.id.attrId>", "contextInputAttributeName": "id", "hydrationDetails": {"contextAttrContextHydrationDetails": [], "contextAttrHydrationDetails": [{"queryAttribute": "Id", "sObjectDomain": "Account"}]}}], "deleteExistingHydrationDetails": false }
193
- ```
194
-
195
- **`QuoteProductDiscoveryMapping / Account`** — 1 attribute-mapping:
196
- ```json
197
- { "contextAttributeMappings": [{"contextAttributeId": "<Account.id.attrId>", "contextInputAttributeName": "id", "hydrationDetails": {"contextAttrContextHydrationDetails": [], "contextAttrHydrationDetails": [{"queryAttribute": "Id", "sObjectDomain": "Account"}]}}], "deleteExistingHydrationDetails": false }
198
- ```
199
-
200
- **`OrderProductDiscoveryMapping / Account`** — 1 attribute-mapping:
201
- ```json
202
- { "contextAttributeMappings": [{"contextAttributeId": "<Account.id.attrId>", "contextInputAttributeName": "id", "hydrationDetails": {"contextAttrContextHydrationDetails": [], "contextAttrHydrationDetails": [{"queryAttribute": "Id", "sObjectDomain": "Account"}]}}], "deleteExistingHydrationDetails": false }
203
- ```
204
-
205
- All three `id` attribute-mappings hydrate from `Account.Id`, which
206
- every org has.
207
-
208
- 6f. **Ensure a default mapping exists, then activate.** Activation enforces
209
- a hard gate — a version with zero mappings flagged `isDefault=true`
210
- returns `DATA_MAPPING_NOT_FOUND: Cannot activate a definition without
211
- default mapping` on the PATCH below. The Connect extend copies the
212
- base's mappings but does NOT preserve the base version's `isDefault`
213
- flag — every mapping on the draft comes back `isDefault=false`.
214
-
215
- 6f-i. **Promote one mapping to default** — for
216
- `customcommsproductdiscovery` the default mapping is
217
- `QuoteProductDiscoveryMapping`. Resolve its `contextMappingId` on the
218
- draft. Then
219
- `PATCH /services/data/v67.0/connect/context-definitions/{draftId}/context-mappings`
220
- with body
221
- `{"contextMappings": [{"contextMappingId": "<11jDX…>", "isDefault": true}]}`.
222
- Skip 6f-i if the draft already has a mapping with `isDefault=true`.
223
-
224
- 6f-ii. **Activate** —
225
- `PATCH /services/data/v67.0/connect/context-definitions/{draftId}`
226
- with `{"isActive": true}`. Expect 200 with `isActive=true` in the
227
- response body.
228
-
229
- 7. **Verify `customcommsproductdiscovery`** —
230
- `GET /services/data/v67.0/connect/context-definitions/{draftId}`. Confirm
231
- `isActive=true`, `definition=customcommsproductdiscovery`,
232
- `baseReference=CommsProductDiscoveryContext__stdctx`. Spot-check the
233
- target shape: 4 top-level mappings (the base-inherited set —
234
- `ProductDiscoveryPromoMapping`, `ProductDiscoveryMapping`,
235
- `QuoteProductDiscoveryMapping`, `OrderProductDiscoveryMapping` — with
236
- `QuoteProductDiscoveryMapping.isDefault=true`); no new context-attributes
237
- on any node; the three shared mappings (`QuoteProductDiscoveryMapping`,
238
- `OrderProductDiscoveryMapping`, `ProductDiscoveryMapping`) each have an
239
- extra `Account`-scoped `id` attribute-mapping hydrated from `Account.Id`.
240
- No `promotionMappingwithcustom` mapping should be present. No
241
- `channelFinal__c` attribute or attribute-mapping should be present.
242
-
243
- ── Step 8 — author `Comms_Product_Discovery_Pricing_Procedure` ────────────────
244
-
245
- Author the discovery-flow pricing procedure as a Business Rules Engine
246
- ExpressionSetDefinition bound to `customcommsproductdiscovery` from Step 6.
247
- Both the shell AND the full V1 version content (steps + variables +
248
- customElement parameters) go in a SINGLE
249
- `POST /connect/business-rules/expression-set` — the Connect API's
250
- `postExpressionSetCreate` accepts nested `versions[]` on create. PATCH of
251
- version content on this API is not supported (returns `INTERNAL_ERROR`), so
252
- the create is the only successful write path.
253
-
254
- 8. **Author `Comms_Product_Discovery_Pricing_Procedure`.**
255
-
256
- 8a. **Skip-if-present gate.**
257
- `GET /services/data/v67.0/query?q=SELECT+Id,DeveloperName,MasterLabel+FROM+ExpressionSetDefinition+WHERE+DeveloperName='Comms_Product_Discovery_Pricing_Procedure'`.
258
- (The Connect collection `/connect/business-rules/expression-set` is
259
- `POST`-only — a `GET` returns `405 METHOD_NOT_ALLOWED`, so the
260
- skip-if-present gate goes through SOQL.) If `totalSize=1`, capture
261
- `records[0].Id` (`9QLDX…`) and skip 8b–8c — the procedure already
262
- exists. Skip-if-present treats an existing record as terminal
263
- regardless of its `enabled` state; do NOT attempt to reactivate an
264
- existing procedure from this step. If `totalSize=0`, proceed.
265
-
266
- 8b. **Resolve the bound CD id.** From the Step 7 GET body, capture the
267
- `contextDefinitionId` (`11ODX…`) for `customcommsproductdiscovery` —
268
- needed for the `contextDefinitions[]` entry in the POST below. Both
269
- `id` and `name` are required on the array element; supplying just
270
- one returns `INVALID_INPUT: Specify a value for name parameter`.
271
-
272
- 8c. **POST the full V1 body — active on create.**
273
- `POST /services/data/v67.0/connect/business-rules/expression-set`
274
- with the body below. `usageType=DefaultPricing` implies
275
- `usageSubtype=RevenueCloud` server-side (do NOT send `usageSubtype`;
276
- the server sets it). `interfaceSourceType=PricingProcedure` classifies
277
- the ESD as a pricing procedure on the runtime index. The two steps'
278
- `sequenceNumber` values fix execution order: `PricingSetting=1`,
279
- `ListPrice=2`. `versions[0].enabled` is `true` so V1 is active on
280
- the 201 response — a single POST, no follow-up activation call.
281
-
282
- ```json
283
- {
284
- "name": "Comms Product Discovery Pricing Procedure",
285
- "apiName": "Comms_Product_Discovery_Pricing_Procedure",
286
- "usageType": "DefaultPricing",
287
- "interfaceSourceType": "PricingProcedure",
288
- "contextDefinitions": [
289
- {"id": "<customcommsproductdiscovery.contextDefinitionId>", "name": "customcommsproductdiscovery"}
290
- ],
291
- "versions": [{
292
- "apiName": "Comms_Product_Discovery_Pricing_Procedure_V1",
293
- "name": "Comms Product Discovery Pricing Procedure V1",
294
- "decimalScale": 2,
295
- "enabled": true,
296
- "rank": 1,
297
- "showExplExternally": false,
298
- "versionNumber": 1,
299
- "variables": [{
300
- "name": "Constant_UnitPrice_Price_Book_Entry_Decision_Table_v2_LP",
301
- "description": "Constant_UnitPrice_Price_Book_Entry_Decision_Table_v2_LP",
302
- "type": "Constant",
303
- "dataType": "Text",
304
- "collection": false,
305
- "decimalPlaces": 2,
306
- "input": false,
307
- "output": false,
308
- "value": "UnitPrice"
309
- }],
310
- "steps": [
311
- {
312
- "name": "PricingSetting",
313
- "description": "Pricing Setting",
314
- "stepType": "BusinessKnowledgeModel",
315
- "actionType": "PricingSettings",
316
- "sequenceNumber": 1,
317
- "resultIncluded": false,
318
- "shouldExposeExecPathMsgOnly": true,
319
- "shouldExposeConditionDetails": false,
320
- "shouldShowExplExternally": false,
321
- "customElement": {
322
- "parameters": [
323
- {"name": "LineItemId", "type": "Parameter", "value": "PricingId", "input": true, "output": false},
324
- {"name": "IsDerived", "type": "Parameter", "value": "IsDerived", "input": true, "output": false},
325
- {"name": "sectionCount", "type": "Literal", "value": "0", "input": true, "output": false},
326
- {"name": "Subtotal", "type": "Parameter", "value": "SubTotal", "input": false, "output": true},
327
- {"name": "selectedFunction", "type": "Literal", "value": "Get", "input": true, "output": false},
328
- {"name": "IsRealTime", "type": "Literal", "value": "false", "input": true, "output": false},
329
- {"name": "IsPropagationEnabled", "type": "Literal", "value": "false", "input": true, "output": false},
330
- {"name": "PriceWaterfall", "type": "Parameter", "value": "price_water_fall","input": false, "output": true},
331
- {"name": "NetUnitPrice", "type": "Parameter", "value": "NetUnitPrice", "input": false, "output": true}
332
- ]
333
- }
334
- },
335
- {
336
- "name": "ListPrice",
337
- "description": "List Price",
338
- "stepType": "BusinessKnowledgeModel",
339
- "actionType": "ListPrice",
340
- "sequenceNumber": 2,
341
- "resultIncluded": false,
342
- "shouldExposeExecPathMsgOnly": true,
343
- "shouldExposeConditionDetails": false,
344
- "shouldShowExplExternally": false,
345
- "customElement": {
346
- "parameters": [
347
- {"name": "ListPriceField", "type": "Parameter", "value": "Constant_UnitPrice_Price_Book_Entry_Decision_Table_v2_LP", "input": true, "output": false},
348
- {"name": "LookUpName", "type": "Literal", "value": "Price Book Entries V2", "input": true, "output": false},
349
- {"name": "LookUpId", "type": "Literal", "value": "0lDDX00000000WW2AY", "input": true, "output": false},
350
- {"name": "Product2Id", "type": "Parameter", "value": "PricingProductId", "input": true, "output": false},
351
- {"name": "Pricebook2Id", "type": "Parameter", "value": "PricebookId", "input": true, "output": false},
352
- {"name": "ProductSellingModelId", "type": "Parameter", "value": "ProductSellingModelId", "input": true, "output": false},
353
- {"name": "Quantity", "type": "Parameter", "value": "ProductQuantity", "input": true, "output": false},
354
- {"name": "LookUpApiName", "type": "Literal", "value": "Price_Book_Entry_Decision_Table_v2", "input": true, "output": false},
355
- {"name": "IsContractEnabled", "type": "Literal", "value": "false", "input": true, "output": false},
356
- {"name": "HideWaterfall", "type": "Literal", "value": "false", "input": true, "output": false},
357
- {"name": "IsOutputResolutionEnabled", "type": "Literal", "value": "false", "input": true, "output": false},
358
- {"name": "sectionCount", "type": "Literal", "value": "0", "input": true, "output": false},
359
- {"name": "selectedFunction", "type": "Literal", "value": "Get", "input": true, "output": false},
360
- {"name": "IsRealTime", "type": "Literal", "value": "false", "input": true, "output": false},
361
- {"name": "Id", "type": "Parameter", "value": "PriceBookEntryId", "input": false, "output": true},
362
- {"name": "IsDerived", "type": "Parameter", "value": "IsDerived", "input": false, "output": true},
363
- {"name": "ListPrice", "type": "Parameter", "value": "UnitPrice", "input": false, "output": true},
364
- {"name": "Subtotal", "type": "Parameter", "value": "SubTotal", "input": false, "output": true}
365
- ]
366
- }
367
- }
368
- ]
369
- }]
370
- }
371
- ```
372
-
373
- Expect 201 with `id` (`9QLDX…`), `versions[0].id` (`9QMDX…`),
374
- `versions[0].steps` echoing both steps, `versions[0].variables`
375
- echoing the single Constant, `contextDefinitions[0]` echoing the
376
- bound CD. The server auto-remaps the `LookUpId` literal value to
377
- whatever `Id` the target `Price_Book_Entry_Decision_Table_v2`
378
- decision table holds on THIS org — the literal `0lDDX00000000WW2AY`
379
- posted in the body is the source-org id from the reference
380
- procedure; the server's response body carries the org-local id.
381
- Both are `0lDDX…` prefix. Do NOT try to preserve the source id.
382
-
383
- 8d. **Verify.** `GET /services/data/v67.0/connect/business-rules/expression-set/{id}`
384
- (using the id from 8c's 201 response). Confirm:
385
- - `apiName=Comms_Product_Discovery_Pricing_Procedure`
386
- - `usageType=DefaultPricing`, `usageSubtype=RevenueCloud`,
387
- `interfaceSourceType=PricingProcedure`
388
- - `contextDefinitions[0].name=customcommsproductdiscovery`
389
- - `versions` length 1, `versions[0].versionNumber=1`,
390
- `versions[0].enabled=true` (active on create)
391
- - `versions[0].steps` length 2 with a `PricingSetting`
392
- (`sequenceNumber=1`, `actionType=PricingSettings`) and a
393
- `ListPrice` (`sequenceNumber=2`, `actionType=ListPrice`)
394
- - `versions[0].variables` length 1 with
395
- `name=Constant_UnitPrice_Price_Book_Entry_Decision_Table_v2_LP`,
396
- `type=Constant`, `dataType=Text`, `value=UnitPrice`
397
-
398
- ## Critical Constraints
399
-
400
- - **Idempotency at Step 3.** Do NOT rely on caller-side "have I run this
401
- before?" flags. The three permission-set writes MUST be preceded by the
402
- Step 3 SOQL every run; assigning an already-assigned permission set errors
403
- with `DUPLICATE_VALUE`.
404
-
405
- - **Steps 1–5 and Steps 6–7 are independent.** If Context Service isn't
406
- enabled or the base CD is missing, Step 6 fails while Steps 1–5 succeed.
407
- Report Step 6 as a **gap** and keep the Steps 1–5 result. Do NOT abort the
408
- whole run on a Step 6 failure.
409
-
410
- - **Do NOT try to POST a full active-extension CD in one Connect call.** A
411
- single POST to `/connect/context-definitions` carrying `developerName`,
412
- `isActive=true`, and the entire mapping bundle in one body returns
413
- `DATA_MAPPING_NOT_FOUND`. The working shape is the Step 6 sequence:
414
- extend inactive → resolve draft Ids → augment via the granular child
415
- endpoints → PATCH `isDefault=true` on one mapping → PATCH `isActive=true`.
416
-
417
- - **Do NOT try to POST the whole CD xmlRep to `/headless/metadata`.** The
418
- extension CD xmlRep is large (~178 KB) and prone to request-size / gateway
419
- errors on that transport. The Connect-API extend-then-augment loop is the
420
- supported path.
421
-
422
- - **Diff by name, never by Id.** Every `contextNodeId`, `contextMappingId`,
423
- `contextNodeMappingId`, `contextAttributeId`, and `contextTagId` is
424
- org-specific (`11o…`, `11j…`, `11b…`, `11n…`, `11T…`). Match records
425
- across base and draft by `name` / `developerName` and walk `childNodes`
426
- recursively; use Ids only to address the correct parent when POSTing a
427
- delta.
428
-
429
- - **Verify by developer name.** Step 7 filters
430
- `GET /connect/context-definitions` by `developerName`. A generated record
431
- Id (`11ODX…`, custom CDs only) is not stable across orgs; developer name
432
- is.
433
-
434
- - **`CommsProductDiscoveryContext__stdctx` must exist on the org before
435
- Step 6.** It ships with Revenue Cloud Comms. If absent, the Step-6c
436
- extend call fails — the `baseReference` FK is invalid.
437
-
438
- - **All child POST endpoints take LIST-wrapper input reps.** POST
439
- `{contextMappings: [...]}`, `{contextNodeMappings: [...]}`,
440
- `{contextAttributes: [...]}`, and
441
- `{contextAttributeMappings: [...], deleteExistingHydrationDetails: false}`
442
- — never a bare object.
443
-
444
- - **Attribute-mapping POST uses `contextAttributeId`, not
445
- `contextAttributeName`.** Resolve the Id from the draft first via the
446
- 6d GET response.
447
-
448
- - **`hydrationDetails` on the attribute-mapping POST is an OBJECT wrapper**
449
- with two typed lists (`contextAttrContextHydrationDetails` and
450
- `contextAttrHydrationDetails`), NOT the bare-array shape the output tree
451
- returns as `contextAttrHydrationDetailList`. Posting a bare array returns
452
- `Can not deserialize: unexpected array`.
453
-
454
- - **Activation gate — a mapping must have `isDefault=true` first.** The
455
- Connect extend copies base mappings but each comes back `isDefault=false`;
456
- activating without promoting one first returns `DATA_MAPPING_NOT_FOUND:
457
- Cannot activate a definition without default mapping`. Step 6f-i handles
458
- this.
459
-
460
- - **Hydration-detail portability.** Every
461
- `hydrationDetails.contextAttrHydrationDetails[*].queryAttribute` value is
462
- either an sObject field name paired with `sObjectDomain` (used by 6e-i's
463
- three `Account.id` mappings — hydrated from `Account.Id`, which every org
464
- has), OR the name of a tag on some other CD referenced by
465
- `mappedContextDefinitionName`. This version only ships the first shape,
466
- so no runtime portability failure is expected here. If a future extension
467
- re-introduces cross-CD hydration and the target CD is absent, the POST
468
- fails with either `UNKNOWN_EXCEPTION: Context Attr Context Details Write
469
- error` or `REQUIRED_FIELD_MISSING: [ObjectName]`. Fallback: retry the
470
- same POST without the `hydrationDetails` key — the attribute-mapping
471
- lands with an empty `contextAttrHydrationDetailList` and its runtime
472
- hydration silently no-ops. Do NOT try to satisfy the `[ObjectName]` error
473
- by adding an `objectName` / `ObjectName` / `sObjectName` field at the
474
- attribute-mapping item level — those are rejected as `Unrecognized field`
475
- by the input rep.
476
-
477
- - **Steps 6 and 8 are chained.** Step 8's POST body carries
478
- `contextDefinitions[0].id = <customcommsproductdiscovery.contextDefinitionId>`
479
- resolved from the Step 7 verify. If Step 6 gaps out, Step 8 CANNOT run —
480
- the ESD's `contextDefinitions` binding is required at create time (the
481
- server rejects a subsequent PATCH that adds it with `INTERNAL_ERROR`), so
482
- a null CD means no valid POST body. Report Step 8 as blocked-by-Step-6 in
483
- that case.
484
-
485
- - **Step 8 uses `POST`-with-full-body, NOT `POST`-then-`PATCH`.** The BRE
486
- Connect API's `postExpressionSetCreate` accepts `versions[].steps[]` and
487
- `versions[].variables[]` inline. `patchExpressionSet` on the same shell
488
- with version content returns `INTERNAL_ERROR`; do NOT split the write.
489
- Similarly, `contextDefinitions` MUST be set on the POST — a subsequent
490
- PATCH to add / change the CD binding on an existing shell also returns
491
- `INTERNAL_ERROR`.
492
-
493
- - **Step 8 activates on create in one POST.** The POST body carries
494
- `versions[0].enabled=true`; `postExpressionSetCreate` accepts an active
495
- version on create as long as the body carries at least one step, and
496
- the 201 response echoes `versions[0].enabled=true`. Do NOT split into
497
- POST-inactive-then-PATCH-active. Rank promotion (multi-version
498
- selection) and effective-date windows are out of scope.
499
-
500
- - **Step 8 skip-if-present is `developerName`-based.** The ESD's
501
- `developerName` (`apiName` on the Connect API is the same identity) is
502
- globally unique on the org; a duplicate POST returns 400. Guard with
503
- the 8a SOQL first — the recipe treats any existing record as terminal
504
- regardless of `enabled`.
505
-
506
- - **`LookUpId` on `ListPrice` is an sObject Id and is not portable
507
- cross-org.** The literal `0lDDX00000000WW2AY` in the reference body maps
508
- to the source org's `Price_Book_Entry_Decision_Table_v2` decision table.
509
- The server auto-remaps it on-write to the target org's decision-table Id
510
- (both are `0lDDX…` prefix; the response body carries the org-local
511
- value). If the decision table is missing on the target org, the POST
512
- still returns 201 but the runtime `ListPrice` step fails on first
513
- execution — verify the decision table exists as a precondition (see
514
- below).
515
-
516
- - **No Setup UI walks, no CLI shell-outs.** Every step routes through a
517
- dispatched REST call — Steps 1–5 through sObject/REST, Steps 6–7 through
518
- `/services/data/v67.0/connect/*`, Step 8 through
519
- `/services/data/v67.0/connect/business-rules/expression-set`. If a
520
- precondition is not satisfied, halt with a gap; do NOT attempt a
521
- shell-out or multipart deploy.
522
-
523
- ## Preconditions
524
-
525
- Before Step 1, confirm:
526
-
527
- 1. **Comms Cloud add-on licenses are provisioned.** Step 1's SOQL is the
528
- canonical check.
529
- 2. **Revenue Cloud base/initial setup is complete.**
530
- 3. **Context Service is enabled and the base CD is present.**
531
- `CommsProductDiscoveryContext__stdctx` ships with Revenue Cloud Comms;
532
- Step 6 extends it.
533
- 4. **Business Rules Engine (BRE) is enabled and the
534
- `Price_Book_Entry_Decision_Table_v2` decision table exists on the org.**
535
- Step 8's `ListPrice` step references it by API name; the server
536
- auto-resolves the target-org `0lDDX…` id at write time. If the decision
537
- table is absent, the POST still succeeds structurally but the pricing
538
- procedure will fail at first-invocation. Sanity check with
539
- `GET /services/data/v67.0/connect/business-rules/decision-tables?apiName=Price_Book_Entry_Decision_Table_v2`
540
- (or SOQL against the corresponding sObject).
541
-
542
- If precondition 3 is missing, Steps 6–7 gap out; Steps 1–5 still complete.
543
- If precondition 4 is missing, Step 8 structurally succeeds but is flagged
544
- as a runtime gap; earlier steps are unaffected.
545
-
546
- ## Verification Checklist
547
-
548
- - Step 3 SOQL returns 0–3 rows and the "already assigned" set is computed
549
- correctly against Step 1's resolved Ids.
550
- - Step 4 posts one `PermissionSetAssignment` per missing permission set and
551
- each returns `201` with a generated Id (`0Pa…`).
552
- - Step 5 SOQL returns one row per resolved permission-set Name.
553
- - Step 6a resolves the `CommsProductDiscoveryContext__stdctx` base
554
- `contextDefinitionId`. For stock CDs the returned id equals the developer
555
- name; the `11ODX…` key-prefix shape only applies to custom / extension CDs.
556
- - Step 6c `POST /connect/context-definitions` (extend) returns 201 with a
557
- new `contextDefinitionId` for the draft; `developerName` echoes
558
- `customcommsproductdiscovery`, `isActive=false`.
559
- - Step 6e writes: 3 context-attribute-mappings on shared base-inherited
560
- mappings' `Account` node-mappings (`id` on `ProductDiscoveryMapping`,
561
- `QuoteProductDiscoveryMapping`, and `OrderProductDiscoveryMapping` — each
562
- hydrated from `Account.Id`). Every response body is 200/201 with the
563
- created child Id, or a duplicate-name 400 treated as a no-op.
564
- - Step 6f-i default-mapping PATCH: 200 and response body shows the chosen
565
- mapping with `isDefault=true`.
566
- - Step 6f-ii activate: PATCH returns 200 and the response body shows
567
- `isActive=true`.
568
- - Step 7 `GET /connect/context-definitions?developerName=customcommsproductdiscovery`
569
- returns 1 row with `isActive=true`, label = `customcommsproductdiscovery`,
570
- and `baseReference=CommsProductDiscoveryContext__stdctx`.
571
- - Step 8a skip-if-present SOQL returns 0 rows (fresh org) or 1 row
572
- matching `DeveloperName=Comms_Product_Discovery_Pricing_Procedure`
573
- (idempotent re-run).
574
- - Step 8c POST returns 201 with `id` (`9QLDX…`), `versions[0].id` (`9QMDX…`),
575
- server-set `usageSubtype=RevenueCloud`, `contextDefinitions` echoing the
576
- bound `customcommsproductdiscovery`. Response `versions[0].steps` length
577
- is 2; `versions[0].variables` length is 1.
578
- - Step 8d verify GET returns the shape asserted in 8d: 2 steps with correct
579
- `sequenceNumber` + `actionType`, 1 Constant variable, and each step's
580
- `customElement.parameters` list length matches the POST body (9 for
581
- `PricingSetting`, 18 for `ListPrice`).
582
-
583
- ## Operations Reference
584
-
585
- | Step | Verb + Path | Op / body | Kind |
586
- |------|-------------------------------------------------------------------|----------------------------------------------------------------------------------|---------|
587
- | 1 | `GET /services/data/v67.0/query` | `q = SELECT Id, Name FROM PermissionSet WHERE Name IN (…3 names…)` | read |
588
- | 2 | `GET /services/data/v67.0/` (or `SELECT Id FROM User …`) | resolve running user | read |
589
- | 3 | `GET /services/data/v67.0/query` | `q = SELECT PermissionSetId, PermissionSet.Name FROM PermissionSetAssignment …` | read |
590
- | 4 | `POST /services/data/v67.0/sobjects/PermissionSetAssignment` | `{AssigneeId, PermissionSetId}` per missing set | write |
591
- | 5 | `GET /services/data/v67.0/query` | re-run Step 3 SOQL | verify |
592
- | 6a | `GET /services/data/v67.0/connect/context-definitions` | resolve `CommsProductDiscoveryContext__stdctx` id | read |
593
- | 6b | `GET /services/data/v67.0/connect/context-definitions` | skip-if-present gate on `customcommsproductdiscovery` | read |
594
- | 6c | `POST /services/data/v67.0/connect/context-definitions` | extend body: `{developerName, name, baseReference}` (no `isActive`) | write |
595
- | 6d | `GET /services/data/v67.0/connect/context-definitions/{draftId}` | resolve org-specific Ids on draft (shared-mapping Account node-mapping Ids; base `Account.id` attr Id) | read |
596
- | 6e-i | `POST /services/data/v67.0/connect/context-node-mappings/{sharedMapping.Account.nodeMappingId}/context-attribute-mappings` × 3 | shared-mapping attrs: `id` on Product / Quote / Order Discovery (each hydrated from `Account.Id`) | write |
597
- | 6f-i | `PATCH /services/data/v67.0/connect/context-definitions/{draftId}/context-mappings` | `{contextMappings: [{contextMappingId, isDefault: true}]}` — required before activation | write |
598
- | 6f-ii| `PATCH /services/data/v67.0/connect/context-definitions/{draftId}`| `{isActive: true}` | write |
599
- | 7 | `GET /services/data/v67.0/connect/context-definitions?developerName=customcommsproductdiscovery` | verify active | verify |
600
- | 8a | `GET /services/data/v67.0/query?q=SELECT+Id,DeveloperName,MasterLabel+FROM+ExpressionSetDefinition+WHERE+DeveloperName='Comms_Product_Discovery_Pricing_Procedure'` | skip-if-present gate (Connect collection is `POST`-only — a `GET` returns 405, so this gate is SOQL) | read |
601
- | 8b | (in-memory) | resolve `customcommsproductdiscovery.contextDefinitionId` from Step 7 | derive |
602
- | 8c | `POST /services/data/v67.0/connect/business-rules/expression-set` | full V1 body: shell + `contextDefinitions[]` + inline `versions[]` (steps, variables, customElement.parameters) | write |
603
- | 8d | `GET /services/data/v67.0/connect/business-rules/expression-set/{id}` | verify shape (2 steps, 1 Constant, correct sequenceNumbers, bound CD) | verify |
604
-
605
- <!-- skill-validate: ignore-start -->
606
- <!-- codey:operations start -->
607
- ## Operations Reference
608
-
609
- Operations this skill uses — routing and dependency reference.
610
-
611
- | Operation | Purpose | Status | Call | Depends on |
612
- |-----------|---------|--------|------|------------|
613
- | `resolve-permission-set-ids` | read | — | `GET /services/data/v67.0/query` | — |
614
- | `resolve-target-user` | read | — | `GET /services/data/v67.0/` | — |
615
- | `check-existing-assignments` | read | — | `GET /services/data/v67.0/query` | `resolve-permission-set-ids`, `resolve-target-user` |
616
- | `assign-permission-set` | write | — | `POST /services/data/v67.0/sobjects/PermissionSetAssignment` | `check-existing-assignments` |
617
- | `verify-assignments` | verify | — | `GET /services/data/v67.0/query` | `assign-permission-set` |
618
- | `confirm-base-cd-active` | read | — | `GET /services/data/v67.0/connect/context-definitions` | — |
619
- | `skip-if-present-cd` | read | — | `GET /services/data/v67.0/connect/context-definitions` | `confirm-base-cd-active` |
620
- | `extend-context-definition` | write | — | `POST /services/data/v67.0/connect/context-definitions` | `skip-if-present-cd` |
621
- | `fetch-draft-node-mappings` | read | — | `GET /services/data/v67.0/connect/context-definitions/{contextDefinitionId}` | `extend-context-definition` |
622
- | `augment-shared-attribute-mappings` | write | — | `POST /services/data/v67.0/connect/context-node-mappings/{parentNodeMappingId}/context-attribute-mappings` | `fetch-draft-node-mappings` |
623
- | `promote-default-mapping` | write | — | `PATCH /services/data/v67.0/connect/context-mappings/{contextMappingId}` | `augment-shared-attribute-mappings` |
624
- | `activate-context-definition` | write | — | `PATCH /services/data/v67.0/connect/context-definitions/{contextDefinitionId}` | `promote-default-mapping` |
625
- | `verify-context-definition-active` | verify | — | `GET /services/data/v67.0/connect/context-definitions` | `activate-context-definition` |
626
- | `skip-if-present-esd` | read | — | `GET /services/data/v67.0/query` | `verify-context-definition-active` |
627
- | `author-pricing-procedure` | write | — | `POST /services/data/v67.0/connect/business-rules/expression-set` | `skip-if-present-esd` |
628
- | `verify-pricing-procedure` | verify | — | `GET /services/data/v67.0/connect/business-rules/expression-set/{expressionSetId}` | `author-pricing-procedure` |
629
- <!-- codey:operations end -->
630
- <!-- skill-validate: ignore-end -->