@salesforce/afv-skills 1.63.0 → 1.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (484) hide show
  1. package/package.json +1 -1
  2. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +312 -0
  3. package/skills/agentforce-offline-experimentation-run/SKILL.md +253 -0
  4. package/skills/agentforce-offline-experimentation-run/scripts/build_report.py +796 -0
  5. package/skills/agentforce-offline-experimentation-run/scripts/resolve-token.sh +111 -0
  6. package/skills/agentforce-offline-experimentation-run/scripts/sfap_replay.py +1053 -0
  7. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +64 -0
  8. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +46 -0
  9. package/skills/automation-company-profile-info-query/SKILL.md +51 -0
  10. package/skills/automation-digital-wallet-configure/SKILL.md +689 -0
  11. package/skills/automation-flow-coordinate/SKILL.md +95 -0
  12. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +1569 -0
  13. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +96 -0
  14. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +23 -0
  15. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +31 -0
  16. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +179 -0
  17. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +13 -0
  18. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +83 -0
  19. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +69 -0
  20. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +274 -0
  21. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +192 -0
  22. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +130 -0
  23. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +92 -0
  24. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +88 -0
  25. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +152 -0
  26. package/skills/automation-flow-coordinate/references/elements/start/start.md +539 -0
  27. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +152 -0
  28. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +497 -0
  29. package/skills/automation-flow-coordinate/references/recipes/author/author.md +868 -0
  30. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +300 -0
  31. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +292 -0
  32. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +323 -0
  33. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +109 -0
  34. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +219 -0
  35. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +180 -0
  36. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +175 -0
  37. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +255 -0
  38. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +212 -0
  39. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +171 -0
  40. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +786 -0
  41. package/skills/automation-flow-coordinate/references/shared/end/end.md +267 -0
  42. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +69 -0
  43. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +80 -0
  44. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +116 -0
  45. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +321 -0
  46. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +320 -0
  47. package/skills/automation-flow-coordinate/references/shared/server-functions.md +597 -0
  48. package/skills/automation-sandbox-post-copy-config-generate/SKILL.md +21 -11
  49. package/skills/automation-sandbox-post-copy-config-generate/assets/config_template.json +10 -0
  50. package/skills/automation-sandbox-post-copy-config-generate/assets/json_schema.json +33 -1
  51. package/skills/automation-sandbox-post-copy-config-generate/references/configuration_catalog.md +44 -1
  52. package/skills/automation-sandbox-post-copy-configure/SKILL.md +132 -124
  53. package/skills/automation-sandbox-post-copy-configure/references/flow_activation_path.md +151 -0
  54. package/skills/automation-sandbox-post-copy-configure/references/scheduled_apex_path.md +55 -9
  55. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +69 -0
  56. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +78 -0
  57. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +373 -0
  58. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +273 -0
  59. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +259 -0
  60. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +369 -0
  61. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +542 -0
  62. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +159 -0
  63. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +349 -0
  64. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +505 -0
  65. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +380 -0
  66. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +567 -0
  67. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +159 -0
  68. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +360 -0
  69. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +539 -0
  70. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +358 -0
  71. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +602 -0
  72. package/skills/commerce-b2b-store-configure/SKILL.md +251 -0
  73. package/skills/commerce-credit-memo-create/SKILL.md +139 -0
  74. package/skills/commerce-delivery-business-hours-configure/SKILL.md +277 -0
  75. package/skills/commerce-delivery-estimation-apply/SKILL.md +155 -0
  76. package/skills/commerce-delivery-estimation-configure/SKILL.md +377 -0
  77. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +174 -0
  78. package/skills/commerce-estimate-bopis-query/SKILL.md +279 -0
  79. package/skills/commerce-estimate-delivery-date-query/SKILL.md +349 -0
  80. package/skills/commerce-fees-apply/SKILL.md +227 -0
  81. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +200 -0
  82. package/skills/commerce-guest-buyer-create/SKILL.md +173 -0
  83. package/skills/commerce-location-bopis-configure/SKILL.md +378 -0
  84. package/skills/commerce-location-business-hours-configure/SKILL.md +235 -0
  85. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +309 -0
  86. package/skills/commerce-location-graph-integrate/SKILL.md +131 -0
  87. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +755 -0
  88. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +331 -0
  89. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +579 -0
  90. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +626 -0
  91. package/skills/commerce-merchant-catalog-configure/SKILL.md +614 -0
  92. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +368 -0
  93. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +118 -0
  94. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +65 -0
  95. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +90 -0
  96. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +72 -0
  97. package/skills/commerce-merchant-insights-query/SKILL.md +279 -0
  98. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +656 -0
  99. package/skills/commerce-order-summary-change-apply/SKILL.md +375 -0
  100. package/skills/commerce-product-details-get/SKILL.md +363 -0
  101. package/skills/commerce-product-search/SKILL.md +563 -0
  102. package/skills/commerce-react-storefront-create/SKILL.md +350 -0
  103. package/skills/commerce-return-order-summary-create/SKILL.md +513 -0
  104. package/skills/commerce-search-relevance-analyze/SKILL.md +757 -0
  105. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +274 -0
  106. package/skills/communications-initial-setup-configure/SKILL.md +630 -0
  107. package/skills/communications-multisite-configure/SKILL.md +571 -0
  108. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +74 -0
  109. package/skills/communications-smb-fiber-catalog-create/SKILL.md +413 -0
  110. package/skills/communications-tmf-integrate/SKILL.md +1368 -0
  111. package/skills/consumer-goods-promotion-bo-api-deploy/SKILL.md +54 -107
  112. package/skills/consumer-goods-promotion-bo-api-deploy/assets/set-comment-value/payloads/copy.json +1 -1
  113. package/skills/consumer-goods-promotion-bo-api-deploy/references/conventions-and-payload-rules.md +82 -5
  114. package/skills/consumer-goods-promotion-bo-api-deploy/references/generate-and-wire.md +35 -2
  115. package/skills/consumer-goods-promotion-bo-api-deploy/references/preflight-and-seed-queries.md +149 -0
  116. package/skills/consumer-goods-promotion-bo-api-deploy/references/smoke-and-verify.md +17 -1
  117. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +448 -0
  118. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +269 -0
  119. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +271 -0
  120. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +382 -0
  121. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +373 -0
  122. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +389 -0
  123. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +338 -0
  124. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +547 -0
  125. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +346 -0
  126. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +1110 -0
  127. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +224 -0
  128. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +418 -0
  129. package/skills/crm-analytics-dashboards-configure/SKILL.md +731 -0
  130. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +233 -0
  131. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +184 -0
  132. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +167 -0
  133. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +55 -0
  134. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +1350 -0
  135. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +1862 -0
  136. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +83 -0
  137. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +81 -0
  138. package/skills/data360-activation-create/SKILL.md +104 -0
  139. package/skills/data360-activation-external-platform-get/SKILL.md +49 -0
  140. package/skills/data360-activation-target-create/SKILL.md +93 -0
  141. package/skills/data360-activation-v2-create/SKILL.md +456 -0
  142. package/skills/data360-audience-dmo-get/SKILL.md +38 -0
  143. package/skills/data360-calculated-affinity-create/SKILL.md +82 -0
  144. package/skills/data360-calculated-insight-create/SKILL.md +148 -0
  145. package/skills/data360-catalog-metadata-create/SKILL.md +183 -0
  146. package/skills/data360-code-extension-create/SKILL.md +115 -0
  147. package/skills/data360-communication-capping-create/SKILL.md +227 -0
  148. package/skills/data360-connection-create/SKILL.md +491 -0
  149. package/skills/data360-content-lens-create/SKILL.md +181 -0
  150. package/skills/data360-data-action-create/SKILL.md +126 -0
  151. package/skills/data360-data-action-target-create/SKILL.md +181 -0
  152. package/skills/data360-data-clean-room-create/SKILL.md +238 -0
  153. package/skills/data360-data-governance-create/SKILL.md +746 -0
  154. package/skills/data360-data-graph-create/SKILL.md +82 -0
  155. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +38 -0
  156. package/skills/data360-data-lake-object-create/SKILL.md +207 -0
  157. package/skills/data360-data-model-object-catalog-get/SKILL.md +49 -0
  158. package/skills/data360-data-model-object-create/SKILL.md +128 -0
  159. package/skills/data360-data-model-object-mapping-create/SKILL.md +106 -0
  160. package/skills/data360-data-space-create/SKILL.md +161 -0
  161. package/skills/data360-data-streams-create/SKILL.md +324 -0
  162. package/skills/data360-engagement-signal-get/SKILL.md +38 -0
  163. package/skills/data360-experiment-create/SKILL.md +82 -0
  164. package/skills/data360-goal-based-campaign-create/SKILL.md +192 -0
  165. package/skills/data360-harmonization-process-history-get/SKILL.md +38 -0
  166. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +84 -0
  167. package/skills/data360-identity-resolution-create/SKILL.md +115 -0
  168. package/skills/data360-intelligent-document-processing-create/SKILL.md +148 -0
  169. package/skills/data360-knowledge-graph-construction-create/SKILL.md +93 -0
  170. package/skills/data360-knowledge-graph-create/SKILL.md +216 -0
  171. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +475 -0
  172. package/skills/data360-machine-learning-mcp-configure/SKILL.md +697 -0
  173. package/skills/data360-multi-org-mcp-configure/SKILL.md +117 -0
  174. package/skills/data360-secondary-index-mcp-configure/SKILL.md +126 -0
  175. package/skills/data360-segment-mcp-configure/SKILL.md +159 -0
  176. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +93 -0
  177. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +93 -0
  178. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +93 -0
  179. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +38 -0
  180. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +62 -0
  181. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +38 -0
  182. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +93 -0
  183. package/skills/data360-semantic-model-mcp-configure/SKILL.md +115 -0
  184. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +38 -0
  185. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +73 -0
  186. package/skills/dx-devops-conflict-resolve/SKILL.md +1 -5
  187. package/skills/dx-devops-pipeline-manage/SKILL.md +1 -5
  188. package/skills/dx-devops-project-manage/SKILL.md +1 -5
  189. package/skills/dx-devops-promote/SKILL.md +1 -5
  190. package/skills/dx-devops-request-status/SKILL.md +1 -5
  191. package/skills/dx-lifecycle-center/SKILL.md +120 -0
  192. package/skills/dx-lifecycle-center/examples/workflows.md +175 -0
  193. package/skills/dx-lifecycle-center/references/connect-api.md +123 -0
  194. package/skills/dx-lifecycle-center/references/connect-org.md +184 -0
  195. package/skills/dx-lifecycle-center/references/deploy.md +153 -0
  196. package/skills/dx-lifecycle-center/references/error-handling.md +21 -0
  197. package/skills/dx-lifecycle-center/references/hub-org.md +37 -0
  198. package/skills/dx-lifecycle-center/references/list-orgs.md +99 -0
  199. package/skills/dx-lifecycle-center/references/request-body.md +75 -0
  200. package/skills/dx-lifecycle-center/references/troubleshooting.md +31 -0
  201. package/skills/dx-lifecycle-center/scripts/poll-deploy-status.sh +200 -0
  202. package/skills/dx-lifecycle-center/scripts/resolve-environment.sh +120 -0
  203. package/skills/dx-org-devhub-configure/SKILL.md +1 -3
  204. package/skills/dx-org-shape-manage/SKILL.md +1 -5
  205. package/skills/dx-org-snapshot-manage/SKILL.md +1 -3
  206. package/skills/education-cloud-academic-calendar-generate/SKILL.md +1 -3
  207. package/skills/education-cloud-course-catalog-migrate/SKILL.md +1 -3
  208. package/skills/education-cloud-domain-configure/SKILL.md +1 -3
  209. package/skills/education-cloud-multi-campus-configure/SKILL.md +1 -3
  210. package/skills/education-cloud-student-recruitment-agent-configure/SKILL.md +1 -5
  211. package/skills/experience-afv-query/SKILL.md +234 -0
  212. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +63 -0
  213. package/skills/experience-apex-components-configure/SKILL.md +69 -0
  214. package/skills/experience-apex-pages-configure/SKILL.md +107 -0
  215. package/skills/experience-app-home-configure/SKILL.md +76 -0
  216. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +58 -0
  217. package/skills/experience-briefcase-configure/SKILL.md +287 -0
  218. package/skills/experience-community-flexi-page-list-create/SKILL.md +74 -0
  219. package/skills/experience-community-template-definition-list-query/SKILL.md +48 -0
  220. package/skills/experience-community-theme-definition-list-query/SKILL.md +38 -0
  221. package/skills/experience-content-assets-configure/SKILL.md +86 -0
  222. package/skills/experience-custom-domain-create/SKILL.md +727 -0
  223. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +41 -0
  224. package/skills/experience-field-service-app-builder-configure/SKILL.md +187 -0
  225. package/skills/experience-flow-category-configure/SKILL.md +117 -0
  226. package/skills/experience-formula-configure/SKILL.md +358 -0
  227. package/skills/experience-global-actions-configure/SKILL.md +69 -0
  228. package/skills/experience-global-publisher-layouts-configure/SKILL.md +79 -0
  229. package/skills/experience-instrumentation-configure/SKILL.md +64 -0
  230. package/skills/experience-lex-engagement-configure/SKILL.md +50 -0
  231. package/skills/experience-lightning-bolt-open/SKILL.md +12 -0
  232. package/skills/experience-lightning-out-configure/SKILL.md +129 -0
  233. package/skills/experience-lightning-preview-configure/SKILL.md +67 -0
  234. package/skills/experience-lightning-types-query/SKILL.md +98 -0
  235. package/skills/experience-malware-scan-configure/SKILL.md +71 -0
  236. package/skills/experience-my-salesforce-configure/SKILL.md +126 -0
  237. package/skills/experience-navigation-menus-configure/SKILL.md +235 -0
  238. package/skills/experience-notification-types-configure/SKILL.md +206 -0
  239. package/skills/experience-notifications-configure/SKILL.md +75 -0
  240. package/skills/experience-record-discovery-query/SKILL.md +227 -0
  241. package/skills/experience-regenerate-previews-open/SKILL.md +94 -0
  242. package/skills/experience-sales-cloud-mab-configure/SKILL.md +254 -0
  243. package/skills/experience-schema-builder-open/SKILL.md +38 -0
  244. package/skills/experience-simple-record-home-configure/SKILL.md +110 -0
  245. package/skills/experience-static-resources-configure/SKILL.md +74 -0
  246. package/skills/experience-ui-bundle-2gp-deploy/SKILL.md +1 -3
  247. package/skills/experience-ui-bundle-features-generate/SKILL.md +1 -5
  248. package/skills/experience-ui-bundle-mfa-configure/SKILL.md +1 -3
  249. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +23 -2
  250. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +13 -3
  251. package/skills/field-service-data-capture-migrate/SKILL.md +1 -3
  252. package/skills/field-service-mobile-branding-configure/SKILL.md +17 -3
  253. package/skills/field-service-objective-designer-configure/SKILL.md +72 -379
  254. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +10 -537
  255. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +65 -1093
  256. package/skills/{field-service-setup-orchestrator-get → field-service-setup-coordinate}/SKILL.md +18 -3
  257. package/skills/field-service-sobject-create-configure/SKILL.md +13 -213
  258. package/skills/field-service-voice-to-form-configure/SKILL.md +40 -11
  259. package/skills/field-service-work-plan-configure/SKILL.md +253 -0
  260. package/skills/field-service-work-rule-designer-configure/SKILL.md +121 -95
  261. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +180 -0
  262. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +196 -0
  263. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +106 -0
  264. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +96 -0
  265. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +111 -0
  266. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +250 -0
  267. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +122 -0
  268. package/skills/fsc-digital-origination-coordinate/SKILL.md +653 -0
  269. package/skills/fsc-digital-origination-demo-run/SKILL.md +225 -0
  270. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +112 -0
  271. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +396 -0
  272. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +336 -0
  273. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +208 -0
  274. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +375 -0
  275. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +83 -0
  276. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +248 -0
  277. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +206 -0
  278. package/skills/fsc-document-checklist-settings-configure/SKILL.md +57 -0
  279. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +148 -0
  280. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +1430 -0
  281. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +471 -0
  282. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +429 -0
  283. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +150 -0
  284. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +123 -0
  285. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +82 -0
  286. package/skills/fsc-product-act3-attributes-create/SKILL.md +249 -0
  287. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +196 -0
  288. package/skills/fsc-product-act5-considerations-get/SKILL.md +44 -0
  289. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +384 -0
  290. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +144 -0
  291. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +107 -0
  292. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +189 -0
  293. package/skills/fsc-stage-management-definition-create/SKILL.md +108 -0
  294. package/skills/fsc-stage-management-permissions-assign/SKILL.md +143 -0
  295. package/skills/fsc-stage-management-transitions-configure/SKILL.md +139 -0
  296. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +135 -0
  297. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +134 -0
  298. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +136 -0
  299. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +134 -0
  300. package/skills/health-cloud-care-requests-create/SKILL.md +178 -0
  301. package/skills/health-cloud-initial-configure/SKILL.md +511 -0
  302. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +1374 -0
  303. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +924 -0
  304. package/skills/health-cloud-referral-management-coordinate/SKILL.md +513 -0
  305. package/skills/health-cloud-timeline-configure/SKILL.md +622 -0
  306. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +135 -0
  307. package/skills/industries-account-score-settings-query/SKILL.md +78 -0
  308. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +177 -0
  309. package/skills/industries-ad-product-availability-search/SKILL.md +399 -0
  310. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +628 -0
  311. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +73 -0
  312. package/skills/industries-atm-settings-starter-configure/SKILL.md +76 -0
  313. package/skills/industries-batch-document-ai-configure/SKILL.md +196 -0
  314. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +71 -0
  315. package/skills/industries-branch-management-settings-configure/SKILL.md +89 -0
  316. package/skills/industries-bre-decision-table-access-configure/SKILL.md +367 -0
  317. package/skills/industries-brokerage-settings-configure/SKILL.md +41 -0
  318. package/skills/industries-calendar-sync-settings-configure/SKILL.md +89 -0
  319. package/skills/industries-care-request-settings-configure/SKILL.md +218 -0
  320. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +54 -0
  321. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +380 -0
  322. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +216 -0
  323. package/skills/industries-catalog-process-intake-configure/SKILL.md +219 -0
  324. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +153 -0
  325. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +168 -0
  326. package/skills/industries-cds-general-settings-configure/SKILL.md +69 -0
  327. package/skills/industries-claim-financial-settings-configure/SKILL.md +169 -0
  328. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +136 -0
  329. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +105 -0
  330. package/skills/industries-collection-plan-settings-configure/SKILL.md +132 -0
  331. package/skills/industries-comms-service-console-settings-configure/SKILL.md +159 -0
  332. package/skills/industries-compliance-configure/SKILL.md +102 -0
  333. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +76 -0
  334. package/skills/industries-contact-center-app-layout-configure/SKILL.md +88 -0
  335. package/skills/industries-contact-center-components-configure/SKILL.md +96 -0
  336. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +95 -0
  337. package/skills/industries-contact-center-user-access-assign/SKILL.md +96 -0
  338. package/skills/industries-course-waitlist-config-configure/SKILL.md +162 -0
  339. package/skills/industries-crisis-center-settings-configure/SKILL.md +84 -0
  340. package/skills/industries-custom-object-settings-configure/SKILL.md +94 -0
  341. package/skills/industries-data-cloud-integration-configure/SKILL.md +88 -0
  342. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +245 -0
  343. package/skills/industries-decision-matrix-builder-configure/SKILL.md +78 -0
  344. package/skills/industries-decision-table-hbase-configure/SKILL.md +87 -0
  345. package/skills/industries-decision-table-version-configure/SKILL.md +74 -0
  346. package/skills/industries-decision-tables-builder-configure/SKILL.md +253 -0
  347. package/skills/industries-decision-tables-configure/SKILL.md +439 -0
  348. package/skills/industries-energy-utilities-configure/SKILL.md +251 -0
  349. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +1008 -0
  350. package/skills/industries-eu-new-connections-configure/SKILL.md +30 -0
  351. package/skills/industries-explainability-msg-template-configure/SKILL.md +135 -0
  352. package/skills/industries-expression-set-message-token-configure/SKILL.md +135 -0
  353. package/skills/industries-field-service-settings-configure/SKILL.md +82 -0
  354. package/skills/industries-form-framework-settings-configure/SKILL.md +30 -0
  355. package/skills/industries-fsc-ai-settings-configure/SKILL.md +57 -0
  356. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +172 -0
  357. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +61 -0
  358. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +58 -0
  359. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +103 -0
  360. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +117 -0
  361. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +99 -0
  362. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +120 -0
  363. package/skills/industries-fundraising-rfm-configure/SKILL.md +128 -0
  364. package/skills/industries-fundraising-settings-configure/SKILL.md +145 -0
  365. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +299 -0
  366. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +87 -0
  367. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +58 -0
  368. package/skills/industries-hc-score-category-settings-configure/SKILL.md +167 -0
  369. package/skills/industries-health-engagement-settings-configure/SKILL.md +218 -0
  370. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +131 -0
  371. package/skills/industries-home-health-bundling-policy-create/SKILL.md +50 -0
  372. package/skills/industries-home-health-entity-labels-configure/SKILL.md +29 -0
  373. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +71 -0
  374. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +27 -0
  375. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +80 -0
  376. package/skills/industries-home-health-guided-setup-configure/SKILL.md +836 -0
  377. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +55 -0
  378. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +61 -0
  379. package/skills/industries-home-health-licenses-assign/SKILL.md +27 -0
  380. package/skills/industries-home-health-operating-hours-create/SKILL.md +40 -0
  381. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +41 -0
  382. package/skills/industries-home-health-service-objective-create/SKILL.md +22 -0
  383. package/skills/industries-home-health-skills-create/SKILL.md +31 -0
  384. package/skills/industries-home-health-users-create/SKILL.md +29 -0
  385. package/skills/industries-icm-act3-toggles-configure/SKILL.md +198 -0
  386. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +361 -0
  387. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +550 -0
  388. package/skills/industries-integrated-care-management-configure/SKILL.md +168 -0
  389. package/skills/industries-object-enablement-configure/SKILL.md +86 -0
  390. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +64 -0
  391. package/skills/insurance-brokerage-agency-billing-configure/SKILL.md +1 -3
  392. package/skills/integration-apex-settings-configure/SKILL.md +61 -0
  393. package/skills/marketing-e360-email-archiving-configure/SKILL.md +73 -0
  394. package/skills/marketing-message-test/SKILL.md +1 -3
  395. package/skills/nonprofit-fundraising-configure/SKILL.md +240 -0
  396. package/skills/nonprofit-fundraising-configure/references/gotchas.md +26 -0
  397. package/skills/nonprofit-fundraising-configure/references/mcp-invocation.md +678 -0
  398. package/skills/nonprofit-fundraising-configure/references/permission-targeting.md +35 -0
  399. package/skills/nonprofit-volunteer-management-model-get/SKILL.md +166 -0
  400. package/skills/nonprofit-volunteer-management-model-get/references/entities.md +315 -0
  401. package/skills/nonprofit-volunteer-management-model-get/references/relationships.md +175 -0
  402. package/skills/nonprofit-volunteer-management-model-get/references/themes.md +143 -0
  403. package/skills/nonprofit-volunteer-management-records-create/SKILL.md +121 -0
  404. package/skills/nonprofit-volunteer-management-records-create/references/field-guide.md +284 -0
  405. package/skills/nonprofit-volunteer-management-records-create/references/mcp-invocation.md +248 -0
  406. package/skills/nonprofit-volunteer-management-records-create/references/review-format.md +140 -0
  407. package/skills/nonprofit-volunteer-management-records-create/scripts/expand-series.py +632 -0
  408. package/skills/nonprofit-volunteer-management-records-create/scripts/render-review-table.py +419 -0
  409. package/skills/nonprofit-volunteer-management-records-create/scripts/tests/test_expand_series.py +690 -0
  410. package/skills/nonprofit-volunteer-management-records-create/scripts/tests/test_render_review_table.py +421 -0
  411. package/skills/nonprofit-volunteer-management-structure-generate/SKILL.md +119 -0
  412. package/skills/nonprofit-volunteer-management-structure-generate/references/configuration-decisions.md +159 -0
  413. package/skills/nonprofit-volunteer-management-structure-generate/references/discovery-interview.md +137 -0
  414. package/skills/nonprofit-volunteer-management-structure-generate/references/edge-cases.md +48 -0
  415. package/skills/nonprofit-volunteer-management-structure-generate/references/mcp-invocation.md +75 -0
  416. package/skills/nonprofit-volunteer-management-structure-generate/references/plan-output.md +141 -0
  417. package/skills/platform-custom-field-generate/SKILL.md +1 -0
  418. package/skills/platform-custom-field-generate/references/advanced-picklists.md +5 -5
  419. package/skills/platform-custom-metadata-type-generate/SKILL.md +3 -0
  420. package/skills/platform-custom-object-generate/SKILL.md +4 -0
  421. package/skills/platform-custom-permissions-configure/SKILL.md +687 -0
  422. package/skills/platform-custom-setting-generate/SKILL.md +3 -0
  423. package/skills/platform-datamask-run/SKILL.md +1 -5
  424. package/skills/platform-label-workbench-import-create/SKILL.md +67 -0
  425. package/skills/platform-permission-set-generate/SKILL.md +3 -0
  426. package/skills/platform-privacy-agent-settings-configure/SKILL.md +752 -0
  427. package/skills/platform-salesforce-connect-adapter-generate/SKILL.md +1 -3
  428. package/skills/platform-sandbox-configure/SKILL.md +1 -3
  429. package/skills/platform-value-set-generate/SKILL.md +3 -0
  430. package/skills/sales-call-scoring-configure/SKILL.md +1 -5
  431. package/skills/service-agentforce-channel-configure/SKILL.md +1 -3
  432. package/skills/service-agentforce-human-escalation-configure/SKILL.md +1 -3
  433. package/skills/service-catalog-template-coordinate/SKILL.md +1 -3
  434. package/skills/service-concierge-portal-generate/SKILL.md +1 -3
  435. package/skills/service-email-to-case-configure/SKILL.md +1 -5
  436. package/skills/service-itsm-agentic-setup-agent-runtime-access-assign/SKILL.md +1 -3
  437. package/skills/service-itsm-agentic-setup-agentforce-coordinate/SKILL.md +1 -3
  438. package/skills/service-itsm-agentic-setup-agentforce-studio-configure/SKILL.md +1 -3
  439. package/skills/service-itsm-agentic-setup-agentforce-studio-validate/SKILL.md +1 -3
  440. package/skills/service-itsm-agentic-setup-cmdb-access-assign/SKILL.md +1 -3
  441. package/skills/service-itsm-agentic-setup-cmdb-bundle-deploy/SKILL.md +1 -5
  442. package/skills/service-itsm-agentic-setup-cmdb-configure/SKILL.md +1 -3
  443. package/skills/service-itsm-agentic-setup-cmdb-coordinate/SKILL.md +1 -3
  444. package/skills/service-itsm-agentic-setup-cmdb-discovery-configure/SKILL.md +1 -3
  445. package/skills/service-itsm-agentic-setup-employee-agent-configure/SKILL.md +1 -3
  446. package/skills/service-itsm-agentic-setup-fulfiller-agent-configure/SKILL.md +1 -3
  447. package/skills/service-itsm-agentic-setup-incident-sla-configure/SKILL.md +1 -0
  448. package/skills/service-itsm-agentic-setup-itsm-agentforce-permset-assign/SKILL.md +1 -3
  449. package/skills/service-itsm-agentic-setup-uel-user-create/SKILL.md +1 -9
  450. package/skills/service-itsm-incident-mgmt-configure/SKILL.md +1 -5
  451. package/skills/service-itsm-incident-priority-configure/SKILL.md +1 -3
  452. package/skills/service-itsm-slack-itservice-configure/SKILL.md +1 -3
  453. package/skills/service-itsm-swarming-configure/SKILL.md +1 -3
  454. package/skills/service-itsm-teams-configure/SKILL.md +1 -3
  455. package/skills/service-itsm-teams-debug/SKILL.md +1 -3
  456. package/skills/service-itsm-teams-employee-agent-configure/SKILL.md +1 -3
  457. package/skills/service-itsm-teams-itdesk-configure/SKILL.md +1 -3
  458. package/skills/service-itsm-teams-itservice-configure/SKILL.md +1 -3
  459. package/skills/service-native-voice-recording-transcription-configure/SKILL.md +1 -3
  460. package/skills/service-omni-agent-users-create/SKILL.md +1 -3
  461. package/skills/service-omni-agent-work-sharing-configure/SKILL.md +1 -3
  462. package/skills/service-omni-attribute-routing-configure/SKILL.md +1 -3
  463. package/skills/service-omni-base-settings-configure/SKILL.md +1 -3
  464. package/skills/service-omni-channel-inventory-analyze/SKILL.md +1 -3
  465. package/skills/service-omni-channel-limits-analyze/SKILL.md +1 -3
  466. package/skills/service-omni-channel-setup-coordinate/SKILL.md +1 -3
  467. package/skills/service-omni-command-center-analyze/SKILL.md +1 -3
  468. package/skills/service-omni-command-center-configure/SKILL.md +1 -3
  469. package/skills/service-omni-permission-set-assign/SKILL.md +1 -3
  470. package/skills/service-omni-presence-status-deploy/SKILL.md +1 -3
  471. package/skills/service-omni-presence-user-config-deploy/SKILL.md +1 -3
  472. package/skills/service-omni-queue-deploy/SKILL.md +1 -3
  473. package/skills/service-omni-queue-members-assign/SKILL.md +1 -3
  474. package/skills/service-omni-queue-routing-config-deploy/SKILL.md +1 -3
  475. package/skills/service-omni-routing-flow-deploy/SKILL.md +1 -3
  476. package/skills/service-omni-service-channel-configure/SKILL.md +1 -3
  477. package/skills/service-omni-sidebar-configure/SKILL.md +1 -3
  478. package/skills/service-omni-skills-based-routing-configure/SKILL.md +1 -3
  479. package/skills/service-omni-supervisor-config-deploy/SKILL.md +1 -3
  480. package/skills/service-omni-supervisor-permset-assign/SKILL.md +1 -3
  481. package/skills/service-omni-supervisor-surface-deploy/SKILL.md +1 -3
  482. package/skills/service-omni-supervisor-users-create/SKILL.md +1 -3
  483. package/skills/service-omni-work-skill-routing-configure/SKILL.md +1 -3
  484. package/skills/tableau-next-asset-create/README.md +0 -65
@@ -0,0 +1,74 @@
1
+ ---
2
+ name: communications-revenue-cloud-settings-configure
3
+ description: "Use this skill when users want to manage Revenue Cloud for Communications (Industries Communications Sales) org preferences. Trigger when users mention revenue, cloudfor, communications, settings, revenue cloudfor communications settings."
4
+ metadata:
5
+ version: "1.0"
6
+ accessCheck: "(OrgPermissions.CMEMultiRecipient && UserPermissions.CMESales) || (OrgPermissions.MultiRecipient || OrgPermissions.CMEMultiRecipient)"
7
+ ---
8
+
9
+ # Managing Revenue Cloudfor Communications Settings
10
+
11
+ ## When to Use This Skill
12
+
13
+ Manage Revenue Cloud for Communications (Industries Communications Sales) org preferences. Read returns Map<String,Boolean> with keys multiLocationEnabled / multiSubscriberEnabled, reflecting OrgPreferences.MultiLocationFeatureOrgPref and OrgPreferences.MultiSubscriberFeatureOrgPref. Two write operations flip those preferences independently. Access guarded by multi-recipient feature access (read + multi-location write) or userCanUseCMEFeatures (multi-subscriber write); admin caller needs Customize Application + the relevant org permission (MultiRecipient/CMEMultiRecipient/CMESales). No Connect/Tooling/Metadata alternative exists.
14
+
15
+ ## Critical Constraints
16
+
17
+ **Preconditions:**
18
+
19
+ - Caller user must have Customize Application permission (admin permission required to edit org preferences via the UDD `editAccess`). (check: `Customize Application permission`)
20
+ - Org must have OrgPermissions.MultiRecipient or OrgPermissions.CMEMultiRecipient enabled — required for the read and Multi-Location write (UDD orgAccess) and gating for multi-recipient feature access. (check: `OrgPermissions.MultiRecipient || OrgPermissions.CMEMultiRecipient`)
21
+ - For Multi-Subscriber write only: org must have OrgPermissions.CMEMultiRecipient AND user must have UserPermissions.CMESales — gates Communications Media Enterprise features access access guard on setMultiSubscriberEnabled. (check: `OrgPermissions.CMEMultiRecipient && UserPermissions.CMESales`)
22
+
23
+ ## Verification Checklist
24
+
25
+ After every write operation, confirm the effect by re-reading state:
26
+
27
+ - After `write-multi-location-enabled`, `write-multi-subscriber-enabled`: call `verify-comms-org-preferences` (`GET /headless/invoke/industries/industries-communications-sales/get-comms-org-preferences`)
28
+
29
+ ## Operations Reference
30
+
31
+ Operations grouped by purpose. Use these as the building blocks for the workflows above.
32
+
33
+ ### Summary
34
+
35
+ | Operation | Purpose | Status | Call | Depends on |
36
+ |-----------|---------|--------|------|------------|
37
+ | `getCommsOrgPreferences_1` | read | implemented | `GET /headless/invoke/industries/industries-communications-sales/get-comms-org-preferences` | — |
38
+ | `write-multi-location-enabled` | write | implemented | `PATCH /headless/invoke/industries/industries-communications-sales/set-multi-location-enabled` | — |
39
+ | `write-multi-subscriber-enabled` | write | implemented | `PATCH /headless/invoke/industries/industries-communications-sales/set-multi-subscriber-enabled` | — |
40
+ | `verify-comms-org-preferences` | verify | implemented | `GET /headless/invoke/industries/industries-communications-sales/get-comms-org-preferences` | `write-multi-location-enabled`, `write-multi-subscriber-enabled` |
41
+
42
+ ### Read operations
43
+
44
+ #### `getCommsOrgPreferences_1`
45
+
46
+ Read the two Industries Communications Sales OrgPreferences. Returns Map<String,Boolean> with keys multiLocationEnabled (OrgPreferences.MultiLocationFeatureOrgPref) and multiSubscriberEnabled (OrgPreferences.MultiSubscriberFeatureOrgPref). Caller must satisfy multi-recipient feature access.
47
+
48
+ **Call:** `GET /headless/invoke/industries/industries-communications-sales/get-comms-org-preferences` — status: `implemented`
49
+
50
+ **Output:** Map<String,Boolean> with two keys: multiLocationEnabled (mirrors OrgPreferences.MultiLocationFeatureOrgPref) and multiSubscriberEnabled (mirrors OrgPreferences.MultiSubscriberFeatureOrgPref).
51
+
52
+ ### Write operations
53
+
54
+ #### `write-multi-location-enabled`
55
+
56
+ Set OrgPreferences.MultiLocationFeatureOrgPref to enable or disable Location-based quoting and ordering. Body: {value: boolean}. Returns true on success. Access guarded by multi-recipient feature access; requires OrgPermissions.MultiRecipient || OrgPermissions.CMEMultiRecipient + Customize Application permission.
57
+
58
+ **Call:** `PATCH /headless/invoke/industries/industries-communications-sales/set-multi-location-enabled` — status: `implemented`
59
+
60
+ #### `write-multi-subscriber-enabled`
61
+
62
+ Set OrgPreferences.MultiSubscriberFeatureOrgPref to enable or disable Subscriber-based quoting and ordering. Body: {value: boolean}. Returns true on success. Access guarded by Communications Media Enterprise features access (the broader CME entitlement, distinct from the multi-recipient guard on read/multi-location-write); requires OrgPermissions.CMEMultiRecipient + UserPermissions.CMESales + Customize Application permission.
63
+
64
+ **Call:** `PATCH /headless/invoke/industries/industries-communications-sales/set-multi-subscriber-enabled` — status: `implemented`
65
+
66
+ ### Verify operations
67
+
68
+ #### `verify-comms-org-preferences`
69
+
70
+ Re-read getCommsOrgPreferences after write-multi-location-enabled and/or write-multi-subscriber-enabled. The returned multiLocationEnabled / multiSubscriberEnabled values reflect the just-written OrgPreferences and confirm the writes took effect.
71
+
72
+ **Call:** `GET /headless/invoke/industries/industries-communications-sales/get-comms-org-preferences` — status: `implemented`
73
+
74
+ **Depends on:** `write-multi-location-enabled`, `write-multi-subscriber-enabled`
@@ -0,0 +1,413 @@
1
+ ---
2
+ name: communications-smb-fiber-catalog-create
3
+ description: "Load the Communications Cloud SMB Fiber sample product catalog into a Salesforce org that has completed comms-cloud-initial-setup. Trigger when users mention \"load the SMB Fiber sample catalog\", \"set up SMB Fiber products for a demo/POC\", or \"give me a populated Comms Cloud org to explore\". Lands ~163 sObjects (6 AttributePicklists + 19 AttributePicklistValues, 5 AttributeCategories, 8 AttributeDefinitions, 8 ProductClassifications + 8 ProductClassificationAttrs, 4 bundle Product2s + 8 simple Product2s, 28 ProductComponentGroups + 28 ProductRelatedComponents, 1 ProductCatalog + 1 ProductCategory + 4 ProductCategoryProducts, ~23 ProductSellingModelOptions, 12 PricebookEntries) via six `/composite/graph` POSTs. All DeveloperNames and codes are `CCC_*` prefixed. Preconditions: three Comms Cloud permsets on the caller, two ProductSellingModels named `Evergreen - Monthly` and `Broadband Subscription`, active Standard Price Book, and a Bundle→ClassificationComponent ProductRelationshipType."
4
+ metadata:
5
+ version: "1.0"
6
+ ---
7
+
8
+ # Communications Cloud — SMB Fiber Sample Catalog
9
+
10
+ Load the fixed SMB Fiber sample product catalog into a Salesforce org
11
+ that has completed `comms-cloud-initial-setup`. Fixed sample dataset:
12
+ product names, prices, and structure are baked in. Intended for demos,
13
+ POCs, and evaluation. The CSV fixtures ship with the skill and are
14
+ consumed as-is; editing them is not supported.
15
+
16
+ Single API: `/services/data/v67.0/composite/graph` (up to 500 sObjects
17
+ per graph, 15 graphs per request, per-graph atomic, back-refs via
18
+ `@{ref.id}`). Six graphs land the full catalog:
19
+
20
+ 1. **Graph 1** — 6 AttributePicklists + 19 AttributePicklistValues.
21
+ 2. **Graph 2** — 5 AttributeCategories + 8 AttributeDefinitions + 8
22
+ ProductClassifications + 8 ProductClassificationAttrs.
23
+ 3. **Graph 3** — 4 bundles + 4 PSMOs (`Evergreen - Monthly`) + 28 PCGs
24
+ + 28 PRCs + 1 Catalog + 1 Category + 4 PCPs.
25
+ 4. **Graph 4a** — 8 simples + 7 PSMOs (`Evergreen - Monthly`;
26
+ Installation ships without a PSMO per the source inventory's
27
+ "Sell only with Other Products" note).
28
+ 5. **Graph 4b** — 12 bridge PSMOs (`Broadband Subscription`).
29
+ 6. **Graph 4c** — 12 PricebookEntries against Standard Price Book.
30
+
31
+ Graph 4 is split because PricebookEntry validation checks
32
+ `(Product2Id, ProductSellingModelId)` against ProductSellingModelOption
33
+ at insert time, and a same-graph PSMO is not yet visible to that check
34
+ (`FIELD_INTEGRITY_EXCEPTION` otherwise).
35
+
36
+ One-shot. Blind re-run against an already-imported org returns
37
+ `DUPLICATE_VALUE` on Graph 1 and rolls back atomically — safe, no
38
+ partial writes. Runtime is under 60 seconds on a warm org.
39
+
40
+ Naming: the 4 bundle Product2 Names are `Fibre Broadband
41
+ Bronze/Silver/Gold/Platinum`; the 8 simple-product Names are `CPE
42
+ Router`, `CPE Router with WiFi`, `Static IP`, `Installation`, `Instant
43
+ Connect`, `Constant Connect`, `DDos Migration`, `Enhanced Security`
44
+ (verbatim from the source inventory, including the source's spelling
45
+ `DDos Migration`). Catalog Name/Code: `BroadBand Catalog` /
46
+ `CCC_CATALOG_BROADBAND`. Category Name/Code: `Fiber BroadBand` /
47
+ `CCC_CAT_FIBER`.
48
+
49
+ ## Workflow
50
+
51
+ ── Step 0 — target-org confirmation ──────────────────────────────────
52
+
53
+ 0. Read `Organization` and surface identity to the customer before any
54
+ write:
55
+ `SELECT Id, Name, InstanceName, IsSandbox, OrganizationType FROM
56
+ Organization LIMIT 1`.
57
+ Emit:
58
+ ```text
59
+ About to load the SMB Fiber sample catalog into:
60
+ Org: <Organization.Name> (<Organization.Id>)
61
+ Instance: <Organization.InstanceName>
62
+ Type: <Organization.OrganizationType> (IsSandbox=<true|false>)
63
+ This will create ~163 sObjects prefixed CCC_*. Confirm to proceed.
64
+ ```
65
+ Do NOT proceed without explicit customer confirmation.
66
+
67
+ ── Steps 1–4 — precondition probes ────────────────────────────────────
68
+
69
+ 1. **Probe `/composite/graph` reachability.**
70
+ `GET /services/data/v67.0/composite/graph` → 405 when reachable.
71
+ A 404 means Composite API is disabled; halt with
72
+ `PRECONDITION_VIOLATION`.
73
+
74
+ 2. **Verify Comms Cloud permsets on the caller.** Flat SOQL against
75
+ `PermissionSetAssignment`:
76
+ ```text
77
+ SELECT PermissionSet.Name FROM PermissionSetAssignment
78
+ WHERE AssigneeId = <caller-user-id>
79
+ AND PermissionSet.Name IN
80
+ ('CMESalesStandardPermissionSet',
81
+ 'CommsCloudSalesFeatures',
82
+ 'SimpleCsvDataImport')
83
+ ```
84
+ Resolve `AssigneeId` from the session context — do NOT probe
85
+ `/services/oauth2/userinfo` (unrouted on some MCP transports).
86
+ Expect 3 rows. Halt with `PRECONDITION_VIOLATION` listing the
87
+ missing permsets by human-readable label:
88
+ ```text
89
+ Your user is missing:
90
+ - "Communications Cloud Sales — Standard" (CMESalesStandardPermissionSet)
91
+ - "Communications Cloud Sales Features" (CommsCloudSalesFeatures)
92
+ - "Simple CSV Data Import" (SimpleCsvDataImport)
93
+ Run comms-cloud-initial-setup first (it handles license + permset
94
+ assignment), then re-invoke this skill.
95
+ ```
96
+
97
+ 3. **Resolve or create every PSM name declared in the CSVs.** Build
98
+ the union of non-blank `PsmName` on `bundles.csv` +
99
+ `simple-products.csv` + every `PricingSellingModelName` on
100
+ `pricebook-entries.csv`. For the shipped templates the set is
101
+ `{"Evergreen - Monthly", "Broadband Subscription"}`. One SOQL:
102
+ ```text
103
+ SELECT Id, Name, Status FROM ProductSellingModel
104
+ WHERE Name IN :required_psm_names
105
+ ```
106
+ For every required name NOT returned Active, POST it via
107
+ `/sobjects/ProductSellingModel` with a **per-name** create body — each
108
+ PSM needs a distinct `(SellingModelType, PricingTerm, PricingTermUnit)`
109
+ triple (the org enforces uniqueness on that triple):
110
+ ```text
111
+ "Evergreen - Monthly":
112
+ {"Name":"Evergreen - Monthly","SellingModelType":"Evergreen",
113
+ "Status":"Active","PricingTerm":1,"PricingTermUnit":"Months"}
114
+ "Broadband Subscription":
115
+ {"Name":"Broadband Subscription","SellingModelType":"TermDefined",
116
+ "Status":"Active","PricingTerm":1,"PricingTermUnit":"Months"}
117
+ ```
118
+ `PricingTerm` + `PricingTermUnit` are REQUIRED at create time
119
+ (`INVALID_INPUT` otherwise; term must be `1` when the unit is
120
+ `Months`). If a row exists but `Status != 'Active'`, PATCH it to
121
+ Active. Build `psm_id_by_name` from the merged set of pre-existing +
122
+ freshly-created Ids. Blank `PsmName` on `simple-products.csv` means
123
+ "no PSMO for this product" (Installation per the source inventory) —
124
+ not an error.
125
+
126
+ 3.5. **Resolve the Bundle→ClassificationComponent ProductRelationshipType.**
127
+ ```text
128
+ SELECT Id FROM ProductRelationshipType
129
+ WHERE MainProductRoleCat='Bundle'
130
+ AND AssociatedProductRoleCat='ClassificationComponent'
131
+ LIMIT 1
132
+ ```
133
+ Seeded by RC. Save the Id for PRC emission in Graph 3. Halt if
134
+ absent.
135
+
136
+ 4. **Resolve and activate Standard Price Book.**
137
+ `SELECT Id, IsActive FROM Pricebook2 WHERE IsStandard=true LIMIT 1`.
138
+ Save `standard_pricebook_id`. If `IsActive=false`, PATCH:
139
+ `PATCH /services/data/v67.0/sobjects/Pricebook2/<id> {"IsActive": true}`.
140
+ No customer prompt — the skill's job is to leave the org demo-ready.
141
+
142
+ ── Steps 6.1–6.5d — the six graph writes ──────────────────────────────
143
+
144
+ 6.1. **Graph 1 — Picklists + Values.** Inputs: `picklists.csv` +
145
+ `picklist-values.csv`.
146
+ - 6 AttributePicklist: `{Name, DataType, Status: "Active"}`.
147
+ `DataType` = `Text` for all six.
148
+ `picklists.csv:DeveloperName` is a fixture-level correlation key,
149
+ NOT a Salesforce field — not emitted.
150
+ - 19 AttributePicklistValue: `{Name, PicklistId: @{apl.id}, Code,
151
+ Value, Sequence, Status: "Active"}`. `Code` is the unique key
152
+ (`CCC_PKLVAL_*`, `CCC_PVLVAL_*`, or `CCC_PKVAL_*` per source
153
+ inventory typos, copied verbatim).
154
+ Total 25 sObjects.
155
+
156
+ 6.3. **Graph 2 — Categories + Definitions + Classifications + PCAs.**
157
+ Inputs: `attribute-categories.csv` + `attributes.csv` +
158
+ `classifications.csv`.
159
+ - 5 AttributeCategory: `{Name, Code, Description}`.
160
+ - 8 AttributeDefinition: `{Name, Label, DeveloperName, DataType,
161
+ IsActive, Code, Description, DefaultHelpText, [PicklistId]}`.
162
+ Picklist-typed rows resolve `PicklistId` to raw Ids from Graph 1's
163
+ response (cross-graph, not `@{ref.id}`).
164
+ - 8 ProductClassification: `{Name, Code, Status: "Active"}`.
165
+ - 8 ProductClassificationAttr: `{Name, ProductClassificationId,
166
+ AttributeDefinitionId, AttributeCategoryId, Status: "Active"}`.
167
+ `Name` synthesized as `<classification> - <attribute>` (required).
168
+ `AttributeCategoryId` resolved from
169
+ `attributes.csv:AttributeCategoryName`. Sourced by expanding each
170
+ non-blank `classifications.csv:AttributeDeveloperNames` cell (a
171
+ `;`-separated list of `CCC_ATT_*`/`CCC_CPE_*` codes) into one PCA
172
+ per code.
173
+ Total 29 sObjects.
174
+
175
+ 6.5a. **Graph 3 — Bundles + Groups + Components + Catalog.** Inputs:
176
+ `bundles.csv` + `component-groups.csv` + `component-wiring.csv` +
177
+ `catalog.csv` + `categories.csv`.
178
+ - 4 Product2 (bundles): `{Name, ProductCode, Family, Type: "Bundle",
179
+ ConfigureDuringSale: "Allowed", IsActive: true, IsAssetizable: true,
180
+ Description, BasedOnId: <PC.id for row.ClassificationDeveloperName
181
+ from Graph 2 state>}`.
182
+ - 4 ProductSellingModelOption: `{Product2Id: @{bundle.id},
183
+ ProductSellingModelId: psm_id_by_name["Evergreen - Monthly"]}`.
184
+ - 28 ProductComponentGroup: `{Name, Code, ParentProductId:
185
+ @{bundle.id}, Sequence, MinBundleComponents, MaxBundleComponents}`.
186
+ CPE groups Min=1/Max=1; every other group Min=0/Max=1.
187
+ - 28 ProductRelatedComponent: `{ParentProductId: @{bundle.id},
188
+ ProductRelationshipTypeId: <PRT Id from Step 3.5>,
189
+ ProductComponentGroupId: @{pcg.id},
190
+ ChildProductClassificationId: <PC.id from Graph 2 state>,
191
+ Quantity: 1, Sequence: <row.Sequence>}`.
192
+ - 1 ProductCatalog: `{Name, Code, Description}`.
193
+ - 1 ProductCategory: `{Name, Code, Description, CatalogId:
194
+ @{catalog.id}}`.
195
+ - 4 ProductCategoryProduct: `{ProductCategoryId: @{category.id},
196
+ ProductId: @{bundle.id}}` — one per bundle code in
197
+ `categories.csv:BundleProductCodes` (`;`-separated).
198
+ Total 70 sObjects.
199
+
200
+ 6.5b. **Graph 4a — Simple Products + PSMOs.** Inputs: `simple-products.csv`.
201
+ - 8 Product2 (simples): `{Name, ProductCode, Family, Description,
202
+ IsActive: true, IsAssetizable}`. `Type` omitted (nullable).
203
+ `ConfigureDuringSale` omitted (simples are PRC children, not
204
+ parents). No classification FK — classification is wired via the
205
+ bundle's PRC path.
206
+ - 7 ProductSellingModelOption: `{Product2Id: @{simple.id},
207
+ ProductSellingModelId: psm_id_by_name["Evergreen - Monthly"]}`.
208
+ Installation (blank `PsmName`) emits Product2 but no PSMO.
209
+ Total 15 sObjects.
210
+
211
+ 6.5c. **Graph 4b — Broadband Subscription bridge PSMOs.**
212
+ 12 ProductSellingModelOption: `{Product2Id: <Product2.Id for
213
+ pbe-row.ProductCode from Graph 3+4a state>, ProductSellingModelId:
214
+ psm_id_by_name["Broadband Subscription"]}`. One per PBE product
215
+ (4 bundles + 8 simples). Required because PricebookEntry validation
216
+ checks `(Product2Id, ProductSellingModelId)` against
217
+ ProductSellingModelOption at insert time.
218
+
219
+ 6.5d. **Graph 4c — PricebookEntries.** Inputs: `pricebook-entries.csv`.
220
+ 12 PricebookEntry: `{Pricebook2Id: standard_pricebook_id, Product2Id:
221
+ <Product2.Id for row.ProductCode>, UnitPrice, IsActive,
222
+ ProductSellingModelId: psm_id_by_name[row.PricingSellingModelName],
223
+ UseStandardPrice: false}`. All 12 rows name `Broadband Subscription`.
224
+ `CurrencyIsoCode` omitted on single-currency orgs (rejected as
225
+ `INVALID_FIELD` otherwise); re-add on multi-currency orgs.
226
+
227
+ ── Step 7 — report ────────────────────────────────────────────────────
228
+
229
+ 7. On success, emit:
230
+ ```text
231
+ SMB Fiber sample catalog loaded into <Organization.Name>.
232
+ - 4 bundles (Fibre Broadband Bronze/Silver/Gold/Platinum) at
233
+ $30/$40/$50/$60.
234
+ - 8 simple products (CPE Router, CPE Router with WiFi, Static IP,
235
+ Installation, Instant Connect, Constant Connect, DDos Migration,
236
+ Enhanced Security) at published unit prices.
237
+ - 28 component groups + 28 classification-child relationships.
238
+ - Per-PSM PSMO breakdown (Evergreen - Monthly: 11,
239
+ Broadband Subscription: 12).
240
+ - 12 PricebookEntries against Standard Price Book.
241
+ - 1 catalog + 1 category with 4 bundles under the category.
242
+ - 6 attribute picklists + 19 values, 8 attribute definitions,
243
+ 5 categories, 8 classifications, 8 classification-attr wirings.
244
+ ```
245
+
246
+ On any graph failure, extract the first real error:
247
+ 1. Iterate `graphResponse.compositeResponse[]` in order.
248
+ 2. Skip entries with `errorCode == "PROCESSING_HALTED"` (cascade
249
+ rollback noise from per-graph atomicity).
250
+ 3. First non-halted entry is the root cause.
251
+
252
+ Report:
253
+ ```text
254
+ Graph <N> failed and rolled back atomically. Your org is unchanged.
255
+ First error:
256
+ referenceId: <referenceId>
257
+ sObject: <parsed-from-url>
258
+ errorCode: <errorCode>
259
+ message: <message>
260
+ fields: <fields>
261
+ ```
262
+ Do NOT retry automatically — per-graph rollback leaves the org
263
+ consistent.
264
+
265
+ ## Dispatch contract — `/services/data/v67.0/composite/graph`
266
+
267
+ Every write step (6.1, 6.3, 6.5a, 6.5b, 6.5c, 6.5d) goes through this
268
+ single endpoint.
269
+
270
+ Body shape:
271
+ ```json
272
+ {
273
+ "graphs": [
274
+ {
275
+ "graphId": "smb-fiber-g1",
276
+ "compositeRequest": [
277
+ {
278
+ "method": "POST",
279
+ "url": "/services/data/v67.0/sobjects/AttributePicklist",
280
+ "referenceId": "apl_upload",
281
+ "body": {"Name": "Upload Speed Picklist",
282
+ "DataType": "Text",
283
+ "Status": "Active"}
284
+ },
285
+ {
286
+ "method": "POST",
287
+ "url": "/services/data/v67.0/sobjects/AttributePicklistValue",
288
+ "referenceId": "apv_up40",
289
+ "body": {"Name": "Upload Speed 40",
290
+ "PicklistId": "@{apl_upload.id}",
291
+ "Code": "CCC_PKLVAL_UPLOAD_SPEED_40",
292
+ "Value": "40",
293
+ "Sequence": 10,
294
+ "Status": "Active"}
295
+ }
296
+ ]
297
+ }
298
+ ]
299
+ }
300
+ ```
301
+
302
+ - Up to 500 sObjects per graph, 15 graphs per request. Full SMB Fiber
303
+ payload (25 + 29 + 70 + 15 + 12 + 12 = 163 sObjects) fits well under
304
+ both caps.
305
+ - Per-graph atomicity: any sub-request failure rolls back the entire
306
+ graph; sibling graphs commit independently.
307
+ - Back-refs use `@{referenceId.id}` (lowercase `id`), same graph only.
308
+ Cross-graph FKs resolve via captured Ids from prior graphs' responses.
309
+ - `graphId` must be <40 chars and start with an alphanumeric character.
310
+
311
+ ## Why not the Connect API alternatives
312
+
313
+ - `/connect/pcm/actions/catalog-update` is pilot-gated and returns
314
+ `FUNCTIONALITY_NOT_ENABLED` on standard sandboxes.
315
+ - `importCatalogProducts` (RevCloud) is not registered under
316
+ `/actions/standard` on standard sandboxes in v67.0.
317
+
318
+ Everything routes through `/composite/graph` — a single API with broad
319
+ availability.
320
+
321
+ ## Critical constraints (wire truth)
322
+
323
+ - **AttributePicklist**: no `DeveloperName`, no `MasterLabel`.
324
+ Uniqueness by `Name`. `DataType` accepts `Boolean|Date|Datetime|
325
+ Number|Text|Currency|Percent` (NOT `Picklist`).
326
+ - **AttributePicklistValue**: unique key is `Code`. Writable fields:
327
+ `Name, PicklistId, Code, Value, Sequence, Status`. `DisplayValue`
328
+ and `Abbreviation` from the source inventory are not sObject fields.
329
+ - **AttributeCategory**: writable fields are `Name, Code, Description`
330
+ only. `Sequence/Status/IsActive/EffectiveStartDate/EffectiveEndDate`
331
+ all rejected.
332
+ - **AttributeDefinition**: help-text field is `DefaultHelpText` (not
333
+ `HelpText`). No `DisplaySequence`, no `AttributeCategoryId` — AD↔AC
334
+ linkage runs through PCA. `Name` uniqueness-enforced. `DataType`
335
+ accepts `Checkbox|Date|Datetime|Number|Text|Currency|Percent|Picklist`
336
+ (NOT `Boolean`).
337
+ - **ProductClassification**: writable fields are `Name, Code, Status,
338
+ ParentProductClassificationId` only. `Description` rejected.
339
+ - **ProductClassificationAttr**: `Name` is REQUIRED. No `DeveloperName`.
340
+ Uniqueness by `(ProductClassificationId, AttributeDefinitionId)`.
341
+ - **Product2**: `Type` picklist has only `Bundle` active (simples omit
342
+ `Type`). No `IsConfigurable`, no `CanUseRevenueSchedule`, no
343
+ `ProductSellingModelId` — PSM linkage runs through
344
+ `ProductSellingModelOption`. Bundles with classification-child PRCs
345
+ MUST carry `ConfigureDuringSale="Allowed"`.
346
+ - **ProductRelatedComponent** with `ChildProductClassificationId`:
347
+ `ProductRelationshipTypeId` REQUIRED; `ProductComponentGroupId`
348
+ REQUIRED and at most ONE classification per PCG;
349
+ `IsComponentRequired` must be false; `IsDefaultComponent` must be
350
+ omitted; `ParentSellingModelId` and `ChildSellingModelId` must be
351
+ omitted. Required-vs-optional is expressed on the PCG via
352
+ `MinBundleComponents`/`MaxBundleComponents`, NOT on the PRC.
353
+ - **ProductComponentGroup**: no `IsActive` field.
354
+ - **ProductCatalog**: no `IsActive`, no `CatalogCode`. Natural key is
355
+ `Code`.
356
+ - **ProductCategory**: no `IsActive`.
357
+ - **ProductCategoryProduct**: no `IsPrimaryCategory`. Emits `{ProductCategoryId,
358
+ ProductId}` only.
359
+ - **ProductSellingModel**: uniqueness is enforced on the
360
+ `(SellingModelType, PricingTerm, PricingTermUnit)` triple, not on
361
+ `Name`. The two catalog PSMs are kept distinct by `SellingModelType`
362
+ (`Evergreen - Monthly` = `Evergreen`, `Broadband Subscription` =
363
+ `TermDefined`).
364
+ - **PricebookEntry**: `ProductSellingModelId` must be a PSM Id
365
+ (`0jP...`), never a PSMO Id (`0iO...`). The matching PSMO for
366
+ `(Product2Id, ProductSellingModelId)` must exist in a PRIOR graph —
367
+ same-graph PSMO is not visible to PBE validation
368
+ (`FIELD_INTEGRITY_EXCEPTION` otherwise). This is why Graph 4 is split
369
+ into 4a → 4b → 4c. `CurrencyIsoCode` rejected on single-currency
370
+ orgs.
371
+ - **Composite Graph DELETE**: does not support dependency ordering.
372
+ Any teardown must be per-Id DELETEs on
373
+ `/sobjects/{sobject}/{id}`.
374
+
375
+ ## Fixtures
376
+
377
+ Templates at `assets/templates/`. Every row maps 1:1 to a source
378
+ inventory tab (Picklists / Picklist Values / Attributes / Attribute
379
+ Categories / Product Classification / Products / Product Groups /
380
+ Catalog / Pricebooks). See `assets/README.md` for column semantics.
381
+
382
+ | File | Rows | Feeds |
383
+ |---|---|---|
384
+ | `picklists.csv` | 6 | Graph 1 — AttributePicklist |
385
+ | `picklist-values.csv` | 19 | Graph 1 — AttributePicklistValue |
386
+ | `attribute-categories.csv` | 5 | Graph 2 — AttributeCategory |
387
+ | `attributes.csv` | 8 | Graph 2 — AttributeDefinition |
388
+ | `classifications.csv` | 8 | Graph 2 — ProductClassification + PCA |
389
+ | `bundles.csv` | 4 | Graph 3 — bundle Product2 + PSMO |
390
+ | `simple-products.csv` | 8 | Graph 4a — simple Product2 + PSMO |
391
+ | `component-groups.csv` | 28 | Graph 3 — ProductComponentGroup |
392
+ | `component-wiring.csv` | 28 | Graph 3 — ProductRelatedComponent |
393
+ | `catalog.csv` | 1 | Graph 3 — ProductCatalog |
394
+ | `categories.csv` | 1 | Graph 3 — ProductCategory + PCP |
395
+ | `pricebook-entries.csv` | 12 | Graph 4b + Graph 4c |
396
+
397
+ ## Operations reference
398
+
399
+ | Step | Verb + Path | Op | Kind |
400
+ |------|---|---|---|
401
+ | 0 | `GET /services/data/v67.0/query` | Organization identity confirmation | probe |
402
+ | 1 | `GET /services/data/v67.0/composite/graph` | reachability | probe |
403
+ | 2 | `GET /services/data/v67.0/query` | PermissionSetAssignment lookup | read |
404
+ | 3 | `GET /services/data/v67.0/query` + `POST /sobjects/ProductSellingModel` (per missing PSM) | PSM lookup + auto-create missing | read+write |
405
+ | 3.5 | `GET /services/data/v67.0/query` | Bundle→ClassificationComponent PRT lookup | read |
406
+ | 4 | `GET /services/data/v67.0/query` + `PATCH /sobjects/Pricebook2/<id>` (if inactive) | Standard Pricebook lookup + auto-activate | read+write |
407
+ | 6.1 | `POST /services/data/v67.0/composite/graph` | Graph 1 | write |
408
+ | 6.3 | `POST /services/data/v67.0/composite/graph` | Graph 2 | write |
409
+ | 6.5a | `POST /services/data/v67.0/composite/graph` | Graph 3 | write |
410
+ | 6.5b | `POST /services/data/v67.0/composite/graph` | Graph 4a | write |
411
+ | 6.5c | `POST /services/data/v67.0/composite/graph` | Graph 4b | write |
412
+ | 6.5d | `POST /services/data/v67.0/composite/graph` | Graph 4c | write |
413
+ | 7 | (no HTTP) | assemble report | inline |