diff --git a/.claude/skills/dataverse-sdk/SKILL.md b/.claude/skills/dataverse-sdk/SKILL.md index 142f452..87331e3 100644 --- a/.claude/skills/dataverse-sdk/SKILL.md +++ b/.claude/skills/dataverse-sdk/SKILL.md @@ -31,7 +31,7 @@ The SDK supports Dataverse's native bulk operations: Pass lists to `create()`, ` from azure.identity import ( InteractiveBrowserCredential, ClientSecretCredential, - ClientCertificateCredential, + CertificateCredential, AzureCliCredential ) from PowerPlatform.Dataverse.client import DataverseClient @@ -45,7 +45,7 @@ credential = AzureCliCredential() # Production options credential = ClientSecretCredential(tenant_id, client_id, client_secret) -credential = ClientCertificateCredential(tenant_id, client_id, cert_path) +credential = CertificateCredential(tenant_id, client_id, cert_path) # Create client (no trailing slash on URL!) client = DataverseClient("https://yourorg.crm.dynamics.com", credential) @@ -256,7 +256,7 @@ except ValidationError as e: 2. **Specify select fields** - Limit returned columns to reduce payload size 3. **Control page size** - Use `top` and `page_size` parameters appropriately 4. **Reuse client instances** - Don't create new clients for each operation -5. **Use production credentials** - ClientSecretCredential or ClientCertificateCredential for unattended operations +5. **Use production credentials** - ClientSecretCredential or CertificateCredential for unattended operations 6. **Error handling** - Implement retry logic for transient errors (`e.is_transient`) 7. **Always include customization prefix** for custom tables/columns 8. **Use lowercase** - Generally using lowercase input won't go wrong, except for custom table/column naming diff --git a/README.md b/README.md index cd959f1..5042464 100644 --- a/README.md +++ b/README.md @@ -87,7 +87,7 @@ The client requires any Azure Identity `TokenCredential` implementation for OAut from azure.identity import ( InteractiveBrowserCredential, ClientSecretCredential, - ClientCertificateCredential, + CertificateCredential, AzureCliCredential ) from PowerPlatform.Dataverse.client import DataverseClient @@ -98,7 +98,7 @@ credential = InteractiveBrowserCredential() # Browser authentication # Production options # credential = ClientSecretCredential(tenant_id, client_id, client_secret) -# credential = ClientCertificateCredential(tenant_id, client_id, cert_path) +# credential = CertificateCredential(tenant_id, client_id, cert_path) client = DataverseClient("https://yourorg.crm.dynamics.com", credential) ``` @@ -341,7 +341,7 @@ For optimal performance in production environments: | **Select Fields** | Specify `select` parameter to limit returned columns and reduce payload size | | **Page Size Control** | Use `top` and `page_size` parameters to control memory usage | | **Connection Reuse** | Reuse `DataverseClient` instances across operations | -| **Production Credentials** | Use `ClientSecretCredential` or `ClientCertificateCredential` for unattended operations | +| **Production Credentials** | Use `ClientSecretCredential` or `CertificateCredential` for unattended operations | | **Error Handling** | Implement retry logic for transient errors (`e.is_transient`) | ### Limitations diff --git a/src/PowerPlatform/Dataverse/claude_skill/SKILL.md b/src/PowerPlatform/Dataverse/claude_skill/SKILL.md index 142f452..87331e3 100644 --- a/src/PowerPlatform/Dataverse/claude_skill/SKILL.md +++ b/src/PowerPlatform/Dataverse/claude_skill/SKILL.md @@ -31,7 +31,7 @@ The SDK supports Dataverse's native bulk operations: Pass lists to `create()`, ` from azure.identity import ( InteractiveBrowserCredential, ClientSecretCredential, - ClientCertificateCredential, + CertificateCredential, AzureCliCredential ) from PowerPlatform.Dataverse.client import DataverseClient @@ -45,7 +45,7 @@ credential = AzureCliCredential() # Production options credential = ClientSecretCredential(tenant_id, client_id, client_secret) -credential = ClientCertificateCredential(tenant_id, client_id, cert_path) +credential = CertificateCredential(tenant_id, client_id, cert_path) # Create client (no trailing slash on URL!) client = DataverseClient("https://yourorg.crm.dynamics.com", credential) @@ -256,7 +256,7 @@ except ValidationError as e: 2. **Specify select fields** - Limit returned columns to reduce payload size 3. **Control page size** - Use `top` and `page_size` parameters appropriately 4. **Reuse client instances** - Don't create new clients for each operation -5. **Use production credentials** - ClientSecretCredential or ClientCertificateCredential for unattended operations +5. **Use production credentials** - ClientSecretCredential or CertificateCredential for unattended operations 6. **Error handling** - Implement retry logic for transient errors (`e.is_transient`) 7. **Always include customization prefix** for custom tables/columns 8. **Use lowercase** - Generally using lowercase input won't go wrong, except for custom table/column naming