openfga.dev icon indicating copy to clipboard operation
openfga.dev copied to clipboard

docs: update .NET SDK BatchCheck documentation

Open daniel-jonathan opened this issue 3 months ago • 2 comments

Update .NET SDK BatchCheck Documentation

Summary

Updates the documentation to reflect that the .NET SDK now supports server-side BatchCheck functionality (implemented in openfga/dotnet-sdk#150).

Changes

Documentation Pages Updated

1. docs/content/getting-started/perform-check.mdx

  • Added .NET SDK (>=v0.9.0) to the list of SDKs supporting server-side BatchCheck
  • Removed "Support in the other SDKs is being worked on" (no longer accurate)
  • Cleaned up explanation to focus on SDKs that have the feature

2. docs/content/interacting/relationship-queries.mdx

  • Added .NET SDK (>=v0.9.0) to the supported SDKs list
  • Removed "Support for .NET is in progress and coming soon"
  • Removed outdated paragraph explaining .NET SDK limitations

3. src/components/Docs/SnippetViewer/BatchCheckRequestViewer.tsx

  • Updated .NET SDK example to show server-side BatchCheck API
  • Changed from client-side parallel checks to server-side /batch-check endpoint
  • Updated to use ClientBatchCheckItem with CorrelationId property
  • Added MaxBatchSize and MaxParallelRequests options
  • Removed misleading version requirement comment

Technical Details

The .NET SDK example now demonstrates:

  • Using ClientBatchCheckRequest with ClientBatchCheckItem list
  • Setting correlation IDs for each check
  • Configuring MaxBatchSize (default: 50) and MaxParallelRequests (default: 10)
  • Accessing results by correlation ID in the response

Before vs After

Before

// The .NET SDK does not yet support server-side batch checks...
var body = new ClientBatchCheckRequest {
  Checks = new List<ClientCheckRequest>() { ... }
}

After

var body = new ClientBatchCheckRequest {
  Checks = new List<ClientBatchCheckItem> {
    new() {
      User = "...",
      Relation = "...",
      Object = "...",
      CorrelationId = "..."
    }
  }
};

Related PRs

Files Changed

  • docs/content/getting-started/perform-check.mdx
  • docs/content/interacting/relationship-queries.mdx
  • src/components/Docs/SnippetViewer/BatchCheckRequestViewer.tsx

Summary by CodeRabbit

  • Documentation
    • .NET SDK (v0.9.0+) now supported for BatchCheck operations
    • Code examples updated across all SDKs with enhanced request/response payload structures

daniel-jonathan avatar Nov 06 '25 14:11 daniel-jonathan

[!IMPORTANT]

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

The changes add .NET SDK support for server-side BatchCheck with updated payload structures including CorrelationId and ContextualTuples across multiple language examples, and update documentation to reflect this support starting from v0.9.0.

Changes

Cohort / File(s) Change Summary
Documentation Updates
docs/content/getting-started/perform-check.mdx, docs/content/interacting/relationship-queries.mdx
Added .NET SDK (≥ v0.9.0) to the BatchCheck supported SDKs list, replacing "coming soon" placeholders. Removed descriptive blocks explaining client-side vs server-side behavior and replaced with concise statements noting server-side BatchCheck availability and ClientBatchCheck method renaming in supporting SDKs.
BatchCheck Request/Response Structures
src/components/Docs/SnippetViewer/BatchCheckRequestViewer.tsx
Expanded DOTNET_SDK and other language examples to reflect updated server-side BatchCheck payload shapes: replaced simple CheckRequest with ClientBatchCheckItem including CorrelationId, added ContextualTuples as List<ClientTupleKey>, introduced Context field serialization, updated batching options (MaxBatchSize, MaxParallelRequests), changed response mapping from Responses to Result field, and adjusted per-item Request construction to use object-style syntax across JS, GO, Python, Java, CURL, and RPC language sections.

Sequence Diagram(s)

The changes preserve the existing control flow (build body → call batchCheck → map results) and focus on data structure updates rather than introducing new interactions or control paths.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

  • Areas requiring extra attention:
    • Payload structure correctness for each language variant (DOTNET, JS, GO, Python, Java, CURL, RPC) to ensure CorrelationId, ContextualTuples, and Context serialization are properly formatted across all language examples
    • Response mapping changes from Responses to Result field—verify consistency across language examples
    • Verification that the updated structures align with the actual .NET SDK v0.9.0+ API surface

Possibly related PRs

  • #1138: Modifies the BatchCheckRequestViewer.tsx templates and related documentation to add/expand server-side BatchCheck examples with richer request/response shapes including contextual tuples and correlation IDs.

Suggested reviewers

  • ttrzeng
  • ewanharris

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: updating documentation for .NET SDK BatchCheck support, which is the primary objective across all modified files.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

coderabbitai[bot] avatar Nov 06 '25 14:11 coderabbitai[bot]

PR Preview Action v1.6.3 :---: Preview removed because the pull request was closed. 2025-12-09 17:40 UTC

github-actions[bot] avatar Nov 06 '25 14:11 github-actions[bot]