-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Overview
This issue tracks the API command implementations for the Salesforce CLI. Phases 1-7 (infrastructure, auth, CI/CD, packaging) are complete. This covers Phases 8-14 for the API surface area.
Decisions:
- SOAP API: Ignored (not relevant for modern CLI)
- Composite API: Deferred (placeholder issue for future consideration)
API Priority Matrix
| API | CLI Suitability | Use Case | Phase |
|---|---|---|---|
| REST API | Excellent | Core CRUD, queries, metadata | 8 |
| Bulk API 2.0 | Excellent | Large data import/export | 9 |
| Tooling API | Excellent | Developer tools, Apex, tests | 10 |
| Metadata API | Good | Deploy/retrieve (thin wrapper) | 11 |
| GraphQL API | Very Good | Modern queries, mutations | 12 |
| Streaming API | Limited | Event subscriptions | 13 |
| Composite API | Deferred | Batch operations | 14 (placeholder) |
Phase Summary
Phase 8: REST API Commands
sfdc query- SOQL queries with paginationsfdc record- CRUD operations (get, create, update, delete)sfdc search- SOSL text searchsfdc object- List/describe SObjects and fieldssfdc limits- Show org API limits
Phase 9: Bulk API 2.0
sfdc bulk import- Import CSV/JSON data (insert/update/upsert/delete)sfdc bulk export- Export data via bulk querysfdc bulk job- Job management (list, status, results, errors, abort)
Phase 10: Tooling API
sfdc apex- List, get, execute anonymous, run testssfdc log- List, get, tail debug logssfdc coverage- Code coverage reports
Phase 11: Metadata API (thin wrapper)
sfdc metadata types- List metadata typessfdc metadata list- List componentssfdc metadata retrieve- Retrieve metadatasfdc metadata deploy- Deploy metadata
Phase 12: GraphQL API
sfdc graphql query- Execute GraphQL queriessfdc graphql mutate- Execute mutationssfdc graphql schema- Schema introspection
Phase 13: Streaming API
sfdc events- Listen, list, publish Platform Eventssfdc cdc- Change Data Capture subscriptions
Phase 14: Composite API (Placeholder)
Deferred for future consideration after user feedback on Phases 8-13.
Implementation Order
- Phase 8 - REST API commands (builds on existing client)
- Phase 9 - Bulk API (high value for data operations)
- Phase 10 - Tooling API (developer workflows)
- Phase 11 - Metadata API (thin wrapper)
- Phase 12 - GraphQL API (modern alternative)
- Phase 13 - Streaming API (limited CLI value)
- Phase 14 - Composite API (deferred)
Linked Issues
- Phase 8: REST API commands #18 - Phase 8: REST API commands
- Phase 9: Bulk API 2.0 for large data operations #19 - Phase 9: Bulk API 2.0
- Phase 10: Tooling API for developer workflows #20 - Phase 10: Tooling API
- Phase 11: Metadata API (thin wrapper) #21 - Phase 11: Metadata API
- Phase 12: GraphQL API for modern queries #22 - Phase 12: GraphQL API
- Phase 13: Streaming API
- Phase 14: Composite API (placeholder)
Total: ~57 items across 7 phases
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels