pltr-cli 0.5.0__tar.gz → 0.5.1__tar.gz

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 (127) hide show
  1. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/PKG-INFO +101 -2
  2. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/README.md +100 -1
  3. pltr_cli-0.5.1/docs/examples/csv-upload.md +581 -0
  4. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/examples/gallery.md +11 -0
  5. pltr_cli-0.5.1/docs/features/dataset-transactions.md +295 -0
  6. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/commands.md +720 -2
  7. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/workflows.md +162 -0
  8. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/pyproject.toml +1 -1
  9. pltr_cli-0.5.1/src/pltr/__init__.py +1 -0
  10. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/cli.py +14 -0
  11. pltr_cli-0.5.1/src/pltr/commands/connectivity.py +432 -0
  12. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/dataset.py +268 -0
  13. pltr_cli-0.5.1/src/pltr/commands/project.py +440 -0
  14. pltr_cli-0.5.1/src/pltr/commands/resource.py +499 -0
  15. pltr_cli-0.5.1/src/pltr/commands/resource_role.py +454 -0
  16. pltr_cli-0.5.1/src/pltr/commands/space.py +662 -0
  17. pltr_cli-0.5.1/src/pltr/services/connectivity.py +305 -0
  18. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/dataset.py +243 -8
  19. pltr_cli-0.5.1/src/pltr/services/project.py +232 -0
  20. pltr_cli-0.5.1/src/pltr/services/resource.py +289 -0
  21. pltr_cli-0.5.1/src/pltr/services/resource_role.py +321 -0
  22. pltr_cli-0.5.1/src/pltr/services/space.py +354 -0
  23. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/utils/formatting.py +108 -1
  24. pltr_cli-0.5.1/tests/test_commands/test_connectivity.py +457 -0
  25. pltr_cli-0.5.1/tests/test_services/test_connectivity.py +352 -0
  26. pltr_cli-0.5.1/tests/test_services/test_dataset_transactions.py +402 -0
  27. pltr_cli-0.5.1/tests/test_services/test_project.py +283 -0
  28. pltr_cli-0.5.1/tests/test_services/test_resource.py +303 -0
  29. pltr_cli-0.5.1/tests/test_services/test_resource_role.py +371 -0
  30. pltr_cli-0.5.1/tests/test_services/test_space.py +390 -0
  31. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/uv.lock +1 -1
  32. pltr_cli-0.5.0/src/pltr/__init__.py +0 -1
  33. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/.github/workflows/ci.yml +0 -0
  34. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/.github/workflows/publish.yml +0 -0
  35. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/.github/workflows/test-publish.yml +0 -0
  36. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/.gitignore +0 -0
  37. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/.pre-commit-config.yaml +0 -0
  38. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/CHANGELOG.md +0 -0
  39. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/CLAUDE.md +0 -0
  40. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/LICENSE +0 -0
  41. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/children.csv +0 -0
  42. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/README.md +0 -0
  43. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/api/wrapper.md +0 -0
  44. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/aliases.md +0 -0
  45. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/authentication.md +0 -0
  46. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/quick-start.md +0 -0
  47. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/docs/user-guide/troubleshooting.md +0 -0
  48. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/folder_info.json +0 -0
  49. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/folders.json +0 -0
  50. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/mypy.ini +0 -0
  51. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/scripts/release.py +0 -0
  52. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/__main__.py +0 -0
  53. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/__init__.py +0 -0
  54. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/base.py +0 -0
  55. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/manager.py +0 -0
  56. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/oauth.py +0 -0
  57. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/storage.py +0 -0
  58. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/auth/token.py +0 -0
  59. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/__init__.py +0 -0
  60. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/admin.py +0 -0
  61. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/alias.py +0 -0
  62. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/completion.py +0 -0
  63. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/configure.py +0 -0
  64. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/folder.py +0 -0
  65. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/mediasets.py +0 -0
  66. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/ontology.py +0 -0
  67. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/orchestration.py +0 -0
  68. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/shell.py +0 -0
  69. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/sql.py +0 -0
  70. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/commands/verify.py +0 -0
  71. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/config/__init__.py +0 -0
  72. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/config/aliases.py +0 -0
  73. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/config/profiles.py +0 -0
  74. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/config/settings.py +0 -0
  75. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/__init__.py +0 -0
  76. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/admin.py +0 -0
  77. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/base.py +0 -0
  78. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/folder.py +0 -0
  79. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/mediasets.py +0 -0
  80. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/ontology.py +0 -0
  81. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/orchestration.py +0 -0
  82. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/services/sql.py +0 -0
  83. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/utils/__init__.py +0 -0
  84. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/utils/alias_resolver.py +0 -0
  85. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/utils/completion.py +0 -0
  86. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/src/pltr/utils/progress.py +0 -0
  87. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/__init__.py +0 -0
  88. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/conftest.py +0 -0
  89. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/README.md +0 -0
  90. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/__init__.py +0 -0
  91. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/conftest.py +0 -0
  92. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/test_auth_flow.py +0 -0
  93. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/test_cli_integration.py +0 -0
  94. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/test_data_workflows.py +0 -0
  95. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/test_data_workflows_simple.py +0 -0
  96. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/integration/test_simple_integration.py +0 -0
  97. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/__init__.py +0 -0
  98. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/test_base.py +0 -0
  99. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/test_manager.py +0 -0
  100. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/test_oauth.py +0 -0
  101. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/test_storage.py +0 -0
  102. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_auth/test_token.py +0 -0
  103. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/__init__.py +0 -0
  104. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_admin.py +0 -0
  105. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_alias.py +0 -0
  106. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_completion.py +0 -0
  107. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_dataset.py +0 -0
  108. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_folder.py +0 -0
  109. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_ontology.py +0 -0
  110. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_orchestration.py +0 -0
  111. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_shell.py +0 -0
  112. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_sql.py +0 -0
  113. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_commands/test_verify_simple.py +0 -0
  114. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_config/__init__.py +0 -0
  115. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_config/test_aliases.py +0 -0
  116. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_config/test_profiles.py +0 -0
  117. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_config/test_settings.py +0 -0
  118. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/__init__.py +0 -0
  119. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_admin.py +0 -0
  120. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_base.py +0 -0
  121. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_dataset.py +0 -0
  122. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_folder.py +0 -0
  123. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_ontology.py +0 -0
  124. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_orchestration.py +0 -0
  125. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_services/test_sql.py +0 -0
  126. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_utils/__init__.py +0 -0
  127. {pltr_cli-0.5.0 → pltr_cli-0.5.1}/tests/test_utils/test_alias_resolver.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pltr-cli
3
- Version: 0.5.0
3
+ Version: 0.5.1
4
4
  Summary: Command-line interface for Palantir Foundry APIs
5
5
  Project-URL: Homepage, https://github.com/anjor/pltr-cli
6
6
  Project-URL: Repository, https://github.com/anjor/pltr-cli
@@ -47,7 +47,11 @@ A comprehensive command-line interface for Palantir Foundry APIs, providing 80+
47
47
 
48
48
  - 🔐 **Secure Authentication**: Token and OAuth2 support with encrypted credential storage
49
49
  - 📊 **Dataset Operations**: Complete dataset management with branches, files, transactions, and views (RID-based API)
50
- - 📁 **Folder Management**: Create, explore, and manage Foundry filesystem structure
50
+ - 📁 **Filesystem Management**: Complete filesystem operations including folders, projects, spaces, and resources
51
+ - 🏗️ **Project Management**: Create, update, and manage Foundry projects within spaces
52
+ - 🌐 **Space Management**: Administer spaces, manage members, and control access
53
+ - 🔐 **Resource Permissions**: Grant, revoke, and manage role-based access to resources
54
+ - 🔗 **Connectivity & Imports**: Manage external connections and import files/tables from various data sources
51
55
  - 🎯 **Comprehensive Ontology Access**: 13 commands for objects, actions, and queries
52
56
  - 🏗️ **Orchestration Management**: Create, manage, and monitor builds, jobs, and schedules
53
57
  - 🎬 **MediaSets Operations**: Upload, download, and manage media content with transaction support
@@ -121,6 +125,15 @@ pltr folder create "My Project"
121
125
  # List root folder contents
122
126
  pltr folder list ri.compass.main.folder.0
123
127
 
128
+ # Manage spaces and projects
129
+ pltr space list
130
+ pltr project create "My Project" ri.compass.main.space.123
131
+ pltr project list --space-rid ri.compass.main.space.123
132
+
133
+ # Manage resource permissions
134
+ pltr resource-role grant ri.compass.main.dataset.123 user123 User viewer
135
+ pltr resource-role list ri.compass.main.dataset.123
136
+
124
137
  # Execute a simple SQL query
125
138
  pltr sql execute "SELECT 1 as test"
126
139
 
@@ -129,6 +142,11 @@ pltr dataset get ri.foundry.main.dataset.abc123
129
142
  pltr dataset branches list ri.foundry.main.dataset.abc123
130
143
  pltr dataset files list ri.foundry.main.dataset.abc123
131
144
 
145
+ # Dataset transaction management
146
+ pltr dataset transactions start ri.foundry.main.dataset.abc123
147
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 <transaction-rid>
148
+ pltr dataset files upload myfile.csv ri.foundry.main.dataset.abc123 --transaction-rid <rid>
149
+
132
150
  # Start interactive mode for exploration
133
151
  pltr shell
134
152
  ```
@@ -171,6 +189,13 @@ pltr sql execute "SELECT * FROM table" # Run SQL queries
171
189
  pltr ontology list # List ontologies
172
190
  pltr dataset get <rid> # Get dataset info
173
191
 
192
+ # Filesystem Management
193
+ pltr folder create "My Project" # Create folders
194
+ pltr space create "Team Space" <org-rid> # Create spaces
195
+ pltr project create "New Project" <space-rid> # Create projects
196
+ pltr resource search "dataset name" # Search resources
197
+ pltr resource-role grant <resource-rid> <user-id> User viewer # Grant permissions
198
+
174
199
  # Orchestration
175
200
  pltr orchestration builds search # Search builds
176
201
  pltr orchestration jobs get <job-rid> # Get job details
@@ -181,6 +206,12 @@ pltr media-sets get <set-rid> <item-rid> # Get media item info
181
206
  pltr media-sets upload <set-rid> file.jpg "/path/file.jpg" <txn-id> # Upload media
182
207
  pltr media-sets download <set-rid> <item-rid> output.jpg # Download media
183
208
 
209
+ # Connectivity & Data Imports
210
+ pltr connectivity connection list # List available connections
211
+ pltr connectivity connection get <conn-rid> # Get connection details
212
+ pltr connectivity import file <conn-rid> <source-path> <dataset-rid> --execute # Import file
213
+ pltr connectivity import table <conn-rid> <table-name> <dataset-rid> --execute # Import table
214
+
184
215
  # Administrative
185
216
  pltr admin user current # Current user info
186
217
  pltr admin user list # List users
@@ -301,6 +332,74 @@ pltr media-sets download ri.mediasets.main.media-set.abc \
301
332
  - Preview mode (`--preview`)
302
333
  - Transaction-based upload workflow
303
334
 
335
+ ### 📊 Dataset Transaction Management
336
+
337
+ pltr-cli provides comprehensive transaction management for datasets, allowing atomic operations with rollback capability:
338
+
339
+ #### Transaction Lifecycle
340
+ ```bash
341
+ # Start a new transaction
342
+ pltr dataset transactions start ri.foundry.main.dataset.abc123 --branch master --type APPEND
343
+ # Returns transaction RID for use in subsequent operations
344
+
345
+ # Check transaction status
346
+ pltr dataset transactions status ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
347
+
348
+ # List all transactions for a dataset
349
+ pltr dataset transactions list ri.foundry.main.dataset.abc123 --branch master
350
+
351
+ # Commit a transaction (make changes permanent)
352
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
353
+
354
+ # Abort a transaction (discard all changes)
355
+ pltr dataset transactions abort ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz --yes
356
+ ```
357
+
358
+ #### File Operations with Transactions
359
+ ```bash
360
+ # Upload files within a transaction
361
+ pltr dataset files upload data.csv ri.foundry.main.dataset.abc123 \
362
+ --transaction-rid ri.foundry.main.transaction.xyz
363
+
364
+ # Multiple file uploads in same transaction
365
+ pltr dataset files upload file1.csv ri.foundry.main.dataset.abc123 \
366
+ --transaction-rid ri.foundry.main.transaction.xyz
367
+ pltr dataset files upload file2.csv ri.foundry.main.dataset.abc123 \
368
+ --transaction-rid ri.foundry.main.transaction.xyz
369
+
370
+ # Commit when ready
371
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
372
+ ```
373
+
374
+ #### Transaction Types
375
+ - **APPEND**: Add new files to dataset
376
+ - **UPDATE**: Add new files and overwrite existing ones
377
+ - **SNAPSHOT**: Replace entire dataset with new files
378
+ - **DELETE**: Remove files from dataset
379
+
380
+ #### Example Workflow
381
+ ```bash
382
+ # Start a transaction for bulk data update
383
+ TRANSACTION=$(pltr dataset transactions start ri.foundry.main.dataset.abc123 \
384
+ --type UPDATE --format json | jq -r '.transaction_rid')
385
+
386
+ # Upload multiple files
387
+ pltr dataset files upload data1.csv ri.foundry.main.dataset.abc123 --transaction-rid $TRANSACTION
388
+ pltr dataset files upload data2.csv ri.foundry.main.dataset.abc123 --transaction-rid $TRANSACTION
389
+
390
+ # Check status before committing
391
+ pltr dataset transactions status ri.foundry.main.dataset.abc123 $TRANSACTION
392
+
393
+ # Commit if everything looks good
394
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 $TRANSACTION
395
+ ```
396
+
397
+ **Benefits:**
398
+ - **Data Integrity**: Atomic operations with rollback capability
399
+ - **Error Recovery**: Clean rollback from failed operations
400
+ - **Collaboration**: Better concurrent modification handling
401
+ - **Automation**: Reliable data pipeline operations
402
+
304
403
  ## ⚙️ Configuration
305
404
 
306
405
  pltr-cli stores configuration securely using industry best practices:
@@ -10,7 +10,11 @@ A comprehensive command-line interface for Palantir Foundry APIs, providing 80+
10
10
 
11
11
  - 🔐 **Secure Authentication**: Token and OAuth2 support with encrypted credential storage
12
12
  - 📊 **Dataset Operations**: Complete dataset management with branches, files, transactions, and views (RID-based API)
13
- - 📁 **Folder Management**: Create, explore, and manage Foundry filesystem structure
13
+ - 📁 **Filesystem Management**: Complete filesystem operations including folders, projects, spaces, and resources
14
+ - 🏗️ **Project Management**: Create, update, and manage Foundry projects within spaces
15
+ - 🌐 **Space Management**: Administer spaces, manage members, and control access
16
+ - 🔐 **Resource Permissions**: Grant, revoke, and manage role-based access to resources
17
+ - 🔗 **Connectivity & Imports**: Manage external connections and import files/tables from various data sources
14
18
  - 🎯 **Comprehensive Ontology Access**: 13 commands for objects, actions, and queries
15
19
  - 🏗️ **Orchestration Management**: Create, manage, and monitor builds, jobs, and schedules
16
20
  - 🎬 **MediaSets Operations**: Upload, download, and manage media content with transaction support
@@ -84,6 +88,15 @@ pltr folder create "My Project"
84
88
  # List root folder contents
85
89
  pltr folder list ri.compass.main.folder.0
86
90
 
91
+ # Manage spaces and projects
92
+ pltr space list
93
+ pltr project create "My Project" ri.compass.main.space.123
94
+ pltr project list --space-rid ri.compass.main.space.123
95
+
96
+ # Manage resource permissions
97
+ pltr resource-role grant ri.compass.main.dataset.123 user123 User viewer
98
+ pltr resource-role list ri.compass.main.dataset.123
99
+
87
100
  # Execute a simple SQL query
88
101
  pltr sql execute "SELECT 1 as test"
89
102
 
@@ -92,6 +105,11 @@ pltr dataset get ri.foundry.main.dataset.abc123
92
105
  pltr dataset branches list ri.foundry.main.dataset.abc123
93
106
  pltr dataset files list ri.foundry.main.dataset.abc123
94
107
 
108
+ # Dataset transaction management
109
+ pltr dataset transactions start ri.foundry.main.dataset.abc123
110
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 <transaction-rid>
111
+ pltr dataset files upload myfile.csv ri.foundry.main.dataset.abc123 --transaction-rid <rid>
112
+
95
113
  # Start interactive mode for exploration
96
114
  pltr shell
97
115
  ```
@@ -134,6 +152,13 @@ pltr sql execute "SELECT * FROM table" # Run SQL queries
134
152
  pltr ontology list # List ontologies
135
153
  pltr dataset get <rid> # Get dataset info
136
154
 
155
+ # Filesystem Management
156
+ pltr folder create "My Project" # Create folders
157
+ pltr space create "Team Space" <org-rid> # Create spaces
158
+ pltr project create "New Project" <space-rid> # Create projects
159
+ pltr resource search "dataset name" # Search resources
160
+ pltr resource-role grant <resource-rid> <user-id> User viewer # Grant permissions
161
+
137
162
  # Orchestration
138
163
  pltr orchestration builds search # Search builds
139
164
  pltr orchestration jobs get <job-rid> # Get job details
@@ -144,6 +169,12 @@ pltr media-sets get <set-rid> <item-rid> # Get media item info
144
169
  pltr media-sets upload <set-rid> file.jpg "/path/file.jpg" <txn-id> # Upload media
145
170
  pltr media-sets download <set-rid> <item-rid> output.jpg # Download media
146
171
 
172
+ # Connectivity & Data Imports
173
+ pltr connectivity connection list # List available connections
174
+ pltr connectivity connection get <conn-rid> # Get connection details
175
+ pltr connectivity import file <conn-rid> <source-path> <dataset-rid> --execute # Import file
176
+ pltr connectivity import table <conn-rid> <table-name> <dataset-rid> --execute # Import table
177
+
147
178
  # Administrative
148
179
  pltr admin user current # Current user info
149
180
  pltr admin user list # List users
@@ -264,6 +295,74 @@ pltr media-sets download ri.mediasets.main.media-set.abc \
264
295
  - Preview mode (`--preview`)
265
296
  - Transaction-based upload workflow
266
297
 
298
+ ### 📊 Dataset Transaction Management
299
+
300
+ pltr-cli provides comprehensive transaction management for datasets, allowing atomic operations with rollback capability:
301
+
302
+ #### Transaction Lifecycle
303
+ ```bash
304
+ # Start a new transaction
305
+ pltr dataset transactions start ri.foundry.main.dataset.abc123 --branch master --type APPEND
306
+ # Returns transaction RID for use in subsequent operations
307
+
308
+ # Check transaction status
309
+ pltr dataset transactions status ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
310
+
311
+ # List all transactions for a dataset
312
+ pltr dataset transactions list ri.foundry.main.dataset.abc123 --branch master
313
+
314
+ # Commit a transaction (make changes permanent)
315
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
316
+
317
+ # Abort a transaction (discard all changes)
318
+ pltr dataset transactions abort ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz --yes
319
+ ```
320
+
321
+ #### File Operations with Transactions
322
+ ```bash
323
+ # Upload files within a transaction
324
+ pltr dataset files upload data.csv ri.foundry.main.dataset.abc123 \
325
+ --transaction-rid ri.foundry.main.transaction.xyz
326
+
327
+ # Multiple file uploads in same transaction
328
+ pltr dataset files upload file1.csv ri.foundry.main.dataset.abc123 \
329
+ --transaction-rid ri.foundry.main.transaction.xyz
330
+ pltr dataset files upload file2.csv ri.foundry.main.dataset.abc123 \
331
+ --transaction-rid ri.foundry.main.transaction.xyz
332
+
333
+ # Commit when ready
334
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 ri.foundry.main.transaction.xyz
335
+ ```
336
+
337
+ #### Transaction Types
338
+ - **APPEND**: Add new files to dataset
339
+ - **UPDATE**: Add new files and overwrite existing ones
340
+ - **SNAPSHOT**: Replace entire dataset with new files
341
+ - **DELETE**: Remove files from dataset
342
+
343
+ #### Example Workflow
344
+ ```bash
345
+ # Start a transaction for bulk data update
346
+ TRANSACTION=$(pltr dataset transactions start ri.foundry.main.dataset.abc123 \
347
+ --type UPDATE --format json | jq -r '.transaction_rid')
348
+
349
+ # Upload multiple files
350
+ pltr dataset files upload data1.csv ri.foundry.main.dataset.abc123 --transaction-rid $TRANSACTION
351
+ pltr dataset files upload data2.csv ri.foundry.main.dataset.abc123 --transaction-rid $TRANSACTION
352
+
353
+ # Check status before committing
354
+ pltr dataset transactions status ri.foundry.main.dataset.abc123 $TRANSACTION
355
+
356
+ # Commit if everything looks good
357
+ pltr dataset transactions commit ri.foundry.main.dataset.abc123 $TRANSACTION
358
+ ```
359
+
360
+ **Benefits:**
361
+ - **Data Integrity**: Atomic operations with rollback capability
362
+ - **Error Recovery**: Clean rollback from failed operations
363
+ - **Collaboration**: Better concurrent modification handling
364
+ - **Automation**: Reliable data pipeline operations
365
+
267
366
  ## ⚙️ Configuration
268
367
 
269
368
  pltr-cli stores configuration securely using industry best practices: