Conversation
… management - New capabilities/platform/ section covering the Meilisearch Cloud platform - Infrastructure: project creation, regions (Frankfurt, London, Singapore, Tokyo, Oregon, Virginia), resource scaling, version management, sharding and replication - Monitoring: search performance (with performance preview debug), indexing performance (with task detail view), usage metrics (CPU, RAM, storage) - Billing: pricing model (daily, per resource, per region via Stripe), invoices, payment methods - Management: webhooks (Cloud multi-webhook via API), experimental features toggles - Move capabilities/security/ and capabilities/teams/ into capabilities/platform/ for unified Cloud platform docs - Add redirects from old security/ and teams/ paths - Update 16 existing redirect destinations to point to new platform/ paths - Image placeholders with Warning callouts throughout for screenshots to be added
Documents the full Meilisearch Cloud platform with accurate content based on the real Cloud UI: Infrastructure: - Overview with resource-based vs usage-based billing comparison, regions (FRA/LON/SGP/JPN/SFO/NYC), resource tiers, Premium Compute - Create a project guide with real UI screenshots - Regions page with region codes, multi-region replication (Enterprise) - Manage resources with hourly billing details and usage-based migration note - Version management with UI screenshots, v1.14+ no-snapshot behavior, Enterprise upgrade management - Sharding and replication (simplified, Enterprise only) - Backups (weekly, last 2 retained, Enterprise customization) Billing: - Overview with resource-based vs usage-based model comparison - Pricing model with correct units ($0.40 per 1,000 searches for Build, $0.30 for Pro), hourly billing for resource-based Monitoring (Beta): - Overview updated to reflect real UI sections - Search performance: latency (p75/p90/p95/p99) and max QPS - Operations: bandwidth (In/Out) and API calls (Failed/Successful) - Indexing performance: TTS latency (p75/p90/p95/p99) Navigation updated: Platform group with Infrastructure, Billing, Monitoring, Management, Security, and Teams sub-groups.
- search_performance.mdx: add Performance trace section with per-step breakdown (tokenize, resolve universe, keyword search, embed, semantic search, format) from the Search preview UI - indexing_performance.mdx: add Batches section with progress trace, internal database sizes, embedder requests, and write congestion metrics from the Batches tab - Add screenshots: search_performance_trace.png, batches_list.png, batch_detail.png
Billing is 100% Stripe-powered. The Cloud UI Billing tab shows a summary and estimated next bill. Invoice history, payment methods, and billing information are all managed in the Stripe customer portal via the 'Manage billing settings and invoices' button.
Based on the recommendation logic from the pricing page calculator: - Document size categories (small/medium/large/AI with vectors) - Formula: index size = docs × avg size × 5 (write amplification) - Tier comparison table with RAM requirements - vCPU guidance for high-QPS workloads - Link to interactive estimator on the pricing page
Security and tenant tokens is now a first-class capability at capabilities/security/ instead of nested under platform. Added redirects from /capabilities/platform/security/* to /capabilities/security/* for backward compatibility.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✅ Files skipped from review due to trivial changes (2)
📝 WalkthroughWalkthroughThe PR reorganizes documentation by introducing a new "Platform" namespace that consolidates Teams, Security, and newly created sections (Infrastructure, Monitoring, Billing, Management) under Changes
Estimated Code Review Effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 12
♻️ Duplicate comments (8)
capabilities/security/overview.mdx (2)
7-7:⚠️ Potential issue | 🟠 MajorInternal Security link creates redirect loop.
This file is located at
capabilities/security/overview.mdx, yet it links to/capabilities/platform/security/how_to/manage_api_keys, which redirects back to/capabilities/security/how_to/manage_api_keys. A page in the Security section should link directly to other pages in the same section without going through redirects.🔗 Recommended fix
-Meilisearch uses [API keys](/capabilities/platform/security/how_to/manage_api_keys) and tenant tokens to control access to your data. +Meilisearch uses [API keys](/capabilities/security/how_to/manage_api_keys) and tenant tokens to control access to your data.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/security/overview.mdx` at line 7, The link in capabilities/security/overview.mdx points to /capabilities/platform/security/how_to/manage_api_keys which causes a redirect loop; update the href to the correct internal path /capabilities/security/how_to/manage_api_keys (the link text "API keys" in the sentence that also mentions "tenant tokens") so the page links directly to the Security section without redirects and verify other internal links in overview.mdx follow the same /capabilities/security/* namespace.
64-75:⚠️ Potential issue | 🟠 MajorAll "Next steps" cards create redirect chains.
All four navigation cards (lines 64, 67, 70, 73) link to
/capabilities/platform/security/*paths, which are redirect sources that redirect back to/capabilities/security/*where this file already resides. These internal Security navigation links should point directly to their actual destinations.🔗 Recommended fix
- <Card title="Getting started" href="/capabilities/platform/security/getting_started"> + <Card title="Getting started" href="/capabilities/security/getting_started"> Generate your first tenant token using an SDK </Card> - <Card title="Token from scratch" href="/capabilities/platform/security/how_to/generate_token_from_scratch"> + <Card title="Token from scratch" href="/capabilities/security/how_to/generate_token_from_scratch"> Build a tenant token manually without an SDK </Card> - <Card title="Token payload" href="/capabilities/platform/security/advanced/tenant_token_payload"> + <Card title="Token payload" href="/capabilities/security/advanced/tenant_token_payload"> Reference for tenant token JWT payload structure </Card> - <Card title="Manage API keys" href="/capabilities/platform/security/how_to/manage_api_keys"> + <Card title="Manage API keys" href="/capabilities/security/how_to/manage_api_keys"> Create, rotate, and scope API keys </Card>🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/security/overview.mdx` around lines 64 - 75, The four Card components titled "Getting started", "Token from scratch", "Token payload", and "Manage API keys" currently use hrefs under "/capabilities/platform/security/..." which are redirect sources; update each Card's href to point directly to the final internal paths under "/capabilities/security/..." (the actual destination pages) so the links no longer create redirect chains—locate the Card components in this file and replace their href values accordingly.resources/comparisons/alternatives.mdx (1)
125-125:⚠️ Potential issue | 🟠 MajorComparison table link creates redirect chain.
The multitenancy link should point directly to
/capabilities/security/overviewrather than the redirect source/capabilities/platform/security/overview.🔗 Recommended fix
-| Tenant tokens & multi-tenant indexes | ✅ <br /> [Multitenancy support](/capabilities/platform/security/overview) | ✅ | ✅ | ✅ <br /> Role-based | +| Tenant tokens & multi-tenant indexes | ✅ <br /> [Multitenancy support](/capabilities/security/overview) | ✅ | ✅ | ✅ <br /> Role-based |🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@resources/comparisons/alternatives.mdx` at line 125, Update the multitenancy link in the comparisons table so it points directly to /capabilities/security/overview instead of the redirecting /capabilities/platform/security/overview; locate the table cell containing "Tenant tokens & multi-tenant indexes" and replace the href target in the link markup (the link currently shown as [Multitenancy support](/capabilities/platform/security/overview)) with /capabilities/security/overview to eliminate the redirect chain.resources/help/faq.mdx (1)
85-85:⚠️ Potential issue | 🟠 MajorSame redirect chain issue as other files.
This link change creates the same unnecessary redirect as flagged in
resources/demos/tenant_tokens.mdxline 19. All Security links should point directly to/capabilities/security/overviewrather than the redirect source/capabilities/platform/security/overview.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@resources/help/faq.mdx` at line 85, The markdown link "[multitenancy with tenant tokens](/capabilities/platform/security/overview)" causes an unnecessary redirect; update the href to point directly to "/capabilities/security/overview" in resources/help/faq.mdx (the link text "multitenancy with tenant tokens") to match the change applied in resources/demos/tenant_tokens.mdx and avoid the redirect.getting_started/glossary.mdx (2)
37-37:⚠️ Potential issue | 🟠 MajorGlossary link creates redirect chain.
This link to Security overview should point directly to
/capabilities/security/overviewrather than the redirect source/capabilities/platform/security/overview.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@getting_started/glossary.mdx` at line 37, The glossary entry referencing "Tenant tokens" links to the redirecting path "/capabilities/platform/security/overview"; update the markdown link target for the "Learn more about tenant tokens" anchor so it points directly to "/capabilities/security/overview" (replace the URL text in the sentence that contains "Tenant tokens allow you to restrict search results per user" or the link text "[Learn more about tenant tokens](/capabilities/platform/security/overview)" to the non-redirecting path).
191-191:⚠️ Potential issue | 🟠 MajorMulti-tenancy link creates redirect chain.
Same redirect chain issue as line 37. Should link directly to
/capabilities/security/overview.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@getting_started/glossary.mdx` at line 191, The glossary entry currently links to /capabilities/platform/security/overview which causes a redirect chain; update the anchor in the sentence ("Learn more about multi-tenancy") to point directly to /capabilities/security/overview so the link target is changed from /capabilities/platform/security/overview to /capabilities/security/overview.capabilities/overview.mdx (1)
34-34:⚠️ Potential issue | 🟠 MajorSecurity card link creates redirect chain.
The Security capability card should link directly to
/capabilities/security/overviewrather than the redirect source/capabilities/platform/security/overview.🔗 Recommended fix
- <Card title="Security and tenant tokens" icon="shield-halved" href="/capabilities/platform/security/overview"> + <Card title="Security and tenant tokens" icon="shield-halved" href="/capabilities/security/overview">🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/overview.mdx` at line 34, The Security capability Card currently uses the redirecting href "/capabilities/platform/security/overview"; update the Card component instance (the <Card ... href=...> with title "Security and tenant tokens" and icon "shield-halved") to point directly to "/capabilities/security/overview" by changing its href prop to the non-redirecting path.capabilities/security/how_to/generate_token_third_party.mdx (1)
90-98:⚠️ Potential issue | 🟠 MajorAll three "Next steps" links create redirect chains.
Lines 90, 93, and 96 all point to
/capabilities/platform/security/*paths, which are redirect sources that redirect back to/capabilities/security/*. These should link directly to the actual destinations.🔗 Recommended fix
- <Card title="Tenant token payload reference" href="/capabilities/platform/security/advanced/tenant_token_payload"> + <Card title="Tenant token payload reference" href="/capabilities/security/advanced/tenant_token_payload"> Detailed reference for all fields in the tenant token payload. </Card> - <Card title="Generate tokens with an SDK" href="/capabilities/platform/security/getting_started"> + <Card title="Generate tokens with an SDK" href="/capabilities/security/getting_started"> Use a Meilisearch SDK to generate tenant tokens with less manual work. </Card> - <Card title="Generate tokens without any library" href="/capabilities/platform/security/how_to/generate_token_from_scratch"> + <Card title="Generate tokens without any library" href="/capabilities/security/how_to/generate_token_from_scratch"> Build tenant tokens manually by assembling the JWT header, payload, and signature. </Card>🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/security/how_to/generate_token_third_party.mdx` around lines 90 - 98, The three Card components titled "Tenant token payload reference", "Generate tokens with an SDK", and "Generate tokens without any library" currently use hrefs under /capabilities/platform/security/* which are redirecting; update each Card's href to point directly to the final /capabilities/security/* destination (replace /capabilities/platform/security/advanced/tenant_token_payload, /capabilities/platform/security/getting_started, and /capabilities/platform/security/how_to/generate_token_from_scratch with their corresponding /capabilities/security/* target URLs) to remove the redirect chain so the links resolve directly.
🧹 Nitpick comments (7)
capabilities/platform/monitoring/search_performance.mdx (1)
6-9: Drop the screenshot placeholder comment block.This is draft metadata and should be removed from the final docs page.
As per coding guidelines, match the existing tone and structure of the docs.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/monitoring/search_performance.mdx` around lines 6 - 9, Remove the draft JSX comment block containing the screenshot placeholders (the block that lists "Search latency chart (p75/p90/p95/p99 in ms) — media_JxXCjcfqpR" and "Maximum search queries per second chart — media_T1CoksUKsc") from the MDX file search_performance.mdx; delete only that placeholder comment so the final docs page no longer contains draft metadata and ensure the remaining content follows the existing docs tone and structure.capabilities/platform/infrastructure/version_management.mdx (2)
42-42: Soften absolute upgrade-duration claim.“Only a few seconds” reads like a guarantee. Consider “typically completes quickly” to avoid overpromising across project sizes and conditions.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/infrastructure/version_management.mdx` at line 42, Replace the absolute phrasing "only a few seconds" in the sentence that starts "**From v1.14 onwards**, upgrades no longer use snapshots for migration." with a softer phrase such as "typically completes quickly" (and optionally qualify "minimal downtime" to "minimal downtime in most cases") to avoid overpromising across different project sizes and conditions.
6-9: Remove draft screenshot TODO block from published content.This internal note should be removed now that image embeds are present.
As per coding guidelines, match the existing tone and structure of docs pages.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/infrastructure/version_management.mdx` around lines 6 - 9, Remove the draft screenshot TODO JSX comment block (the {/* Screenshots needed on this page: ... */} comment) from the published content in version_management.mdx; locate the comment inside the MDX body and delete the entire block so only the final image embeds remain, preserving the existing doc tone and structure around the screenshots section (no other edits needed).capabilities/platform/monitoring/usage_metrics.mdx (1)
6-9: Remove internal screenshot placeholder comments before publishing.These authoring notes are useful in draft, but they should not ship in the final docs page.
As per coding guidelines, match the existing tone and structure of docs pages and keep user-facing content focused.Suggested cleanup
-{/* Screenshots needed on this page: - 1. Bandwidth chart showing In/Out in MB — media_yQbWnbfdrS - 2. API calls chart showing Failed/Successful — media_dv5dHTm4jJ -*/}🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/monitoring/usage_metrics.mdx` around lines 6 - 9, Remove the internal authoring placeholder comment block that begins with "Screenshots needed on this page:" including the referenced media IDs (media_yQbWnbfdrS and media_dv5dHTm4jJ); delete this commentary so the published page contains only user-facing content and matches the tone/structure of other docs pages while keeping any necessary screenshot assets integrated via the normal content/image inclusion flow.capabilities/platform/monitoring/overview.mdx (1)
15-15: Rephrase “Indexing latency TTS” for readability.Line 15 reads awkwardly; “time-to-search (TTS) latency” is clearer on first read.
As per coding guidelines: "Prefer short, direct sentences and avoid jargon when a simpler term exists in documentation."✏️ Suggested wording update
-| **Indexing performance** | Indexing latency TTS (p75/p90/p95/p99) | +| **Indexing performance** | Time-to-search (TTS) latency (p75/p90/p95/p99) |🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/monitoring/overview.mdx` at line 15, Replace the awkward header string "Indexing latency TTS (p75/p90/p95/p99)" with a clearer phrase such as "Indexing time-to-search (TTS) latency (p75/p90/p95/p99)" so the term TTS is expanded on first use and reads more naturally; update the table cell that contains "Indexing latency TTS (p75/p90/p95/p99)" accordingly.capabilities/platform/infrastructure/backups.mdx (1)
20-20: Clarify the restore date format in support requests.Line 20 asks for “the date you want to restore to,” but doesn’t specify format or timezone. Adding
YYYY-MM-DDandUTCreduces back-and-forth with support.
As per coding guidelines: "Prefer short, direct sentences and avoid jargon when a simpler term exists in documentation."✏️ Suggested wording update
-To restore your project from a backup, contact [support@meilisearch.com](mailto:support@meilisearch.com) with your project name and the date you want to restore to. +To restore your project from a backup, contact [support@meilisearch.com](mailto:support@meilisearch.com) with your project name and the target restore date in `YYYY-MM-DD` (UTC).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/infrastructure/backups.mdx` at line 20, The restore instruction is ambiguous about date format and timezone; update the sentence that asks for "the date you want to restore to" to explicitly request the date in ISO format and timezone (e.g., "YYYY-MM-DD, UTC") so support gets a precise timestamp; replace the current phrasing with a short clear sentence like: "Include your project name and the date to restore to (format: YYYY-MM-DD, timezone: UTC)."capabilities/platform/infrastructure/overview.mdx (1)
66-66: Optional: Consider stronger wording than "very large."The phrase "very large indexes" could be replaced with a more specific or concrete description, such as "indexes exceeding several hundred GB" or simply "large indexes."
💡 Alternative phrasing
-Premium Compute is suited for production workloads with strict latency requirements or very large indexes. Contact [sales@meilisearch.com](mailto:sales@meilisearch.com) to enable it. +Premium Compute is suited for production workloads with strict latency requirements or large indexes. Contact [sales@meilisearch.com](mailto:sales@meilisearch.com) to enable it.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@capabilities/platform/infrastructure/overview.mdx` at line 66, The sentence "Premium Compute is suited for production workloads with strict latency requirements or very large indexes." is vague—update the wording in the line containing "Premium Compute is suited for production workloads with strict latency requirements or very large indexes." to be more specific by replacing "very large indexes" with a clearer phrase such as "indexes exceeding several hundred GB" or simply "large indexes" (choose the preferred alternative), ensuring the revised sentence retains the same meaning and link to sales@meilisearch.com remains unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@capabilities/platform/billing/pricing_model.mdx`:
- Line 103: Update the sentence that reads "Tiers L and below share 2 vCPUs" to
avoid conflicting with the tier table by using wording like "share CPU
resources" (or "share CPU resources across instances") and retain the
dedicated-core phrasing for "XL and above provide dedicated cores"; specifically
edit the line containing the phrase "Tiers L and below share 2 vCPUs" so it
aligns with the XS/S table entries and clearly contrasts shared CPU resources
vs. XL+ dedicated cores.
- Around line 34-38: The "Prorated daily cycle" bullet currently applies to both
billing models but should be scoped to resource-based billing only; modify the
section so that the "Prorated daily cycle" bullet is moved under or explicitly
tied to the resource-based billing subsection (or rewrite it to state "For
resource-based billing: Prorated daily cycle..."), and ensure the usage-based
billing description retains its monthly charging language; reference the
existing bullet text "Prorated daily cycle" and the terms "resource-based
billing" and "usage-based charging" when making the change.
- Around line 3-7: The intro currently claims “Meilisearch Cloud charges per
project per day” but later describes a usage-based monthly flow; split the
opening into two clear statements for the two models: one for resource-based
billing (daily/project-level charges) and one for usage-based billing (monthly
cadence with upfront plan fee + end-of-cycle usage charges). Update the
paragraph that starts with “Meilisearch Cloud charges per project per day” and
the sentence “The billing model depends on whether each project is
resource-based or usage-based” to instead introduce two short subsections or
sentences that name the models (resource-based vs usage-based) and briefly state
their billing cadence and what to expect, so the rest of the page can expand
each model without conflicting guidance.
In `@capabilities/platform/infrastructure/manage_resources.mdx`:
- Line 50: Update the two <img> tag src attributes in the manage_resources.mdx
content so they include the /assets prefix; change the src value
"/images/platform/infrastructure/resource_settings.png" (the image tag shown in
the diff) to "/assets/images/platform/infrastructure/resource_settings.png" and
likewise change "/images/platform/infrastructure/plan_selection.png" to
"/assets/images/platform/infrastructure/plan_selection.png" to match the
documentation standard used across platform docs.
In `@capabilities/platform/infrastructure/regions.mdx`:
- Line 12: The table row that labels `FRA` as "GDPR-compliant" (and the similar
entry at the other occurrence) should be reworded to avoid implying legal
compliance is guaranteed by region alone; update the `FRA` row text to something
like "Frankfurt, Germany — data stored in the EU (may help meet GDPR-related
data residency requirements; compliance depends on contractual and operational
controls)" and make the same wording change for the other instance so both
entries emphasize data residency benefits without asserting automatic GDPR
compliance.
In `@capabilities/platform/management/experimental_features.mdx`:
- Line 23: Update the feature table row titled **"CONTAINS" and "STARTS_WITH"
filters** so the description documents both operators: explain that `CONTAINS`
filters documents where an attribute includes a specific substring and
`STARTS_WITH` matches attributes that begin with a given prefix, and include
brief notes on case-sensitivity/behavior if applicable; edit the text next to
that row title to mention both operators and their expected matching semantics
so the table is no longer ambiguous.
In `@capabilities/platform/management/webhooks.mdx`:
- Line 23: Replace the abbreviated "e.g." with the phrase "for example" in the
Authorization Header example sentence in webhooks.mdx (the line that reads
"Optionally, enter an **Authorization Header** (e.g. `Bearer
your-secret-token`)."); update that parenthetical to read "(for example `Bearer
your-secret-token`)" so the text follows the accessibility guideline.
In `@capabilities/platform/overview.mdx`:
- Around line 38-40: Update the Card with title "Security" so its href points
directly to the real documentation path: change the href value in the Card
element (the Card with title="Security") from
"/capabilities/platform/security/overview" to "/capabilities/security/overview"
to avoid relying on redirects.
In `@capabilities/platform/teams/how_to/manage_team_roles.mdx`:
- Line 29: Update the redirecting link in manage_team_roles.mdx: replace the
href "/capabilities/platform/security/how_to/manage_api_keys" with the canonical
"/capabilities/security/how_to/manage_api_keys" for the "API keys" link so it
points directly to the destination and avoids the redirect chain.
In `@getting_started/frameworks/laravel.mdx`:
- Line 187: Replace the markdown link target for "[Multi-tenancy]" that
currently points to "/capabilities/platform/security/overview" with the
canonical Security path "/capabilities/security/overview" so the link goes
directly to the top-level Security overview rather than relying on a redirect.
In `@resources/demos/tenant_tokens.mdx`:
- Line 19: The Card component link uses a redirect source href
"/capabilities/platform/security/overview" causing an extra redirect; update the
Card's href (e.g., the Card with title "Tenant tokens guide") to point directly
to the canonical path "/capabilities/security/overview" (and apply the same
adjustment for all other Card/Link hrefs in this PR that reference
"/capabilities/platform/security/*") so links go straight to the final
destination rather than a redirect source.
In `@resources/self_hosting/security/overview.mdx`:
- Line 34: Update the tenant-token link in the checklist line in
resources/self_hosting/security/overview.mdx by replacing the current path
"/capabilities/platform/security/overview" with the canonical
"/capabilities/security/overview" so the checkbox reference to "[tenant tokens]"
points to the top-level Security page; locate the checklist item string (the
line containing "[ ] Consider [tenant tokens]") and change only the URL portion
to the new path.
---
Duplicate comments:
In `@capabilities/overview.mdx`:
- Line 34: The Security capability Card currently uses the redirecting href
"/capabilities/platform/security/overview"; update the Card component instance
(the <Card ... href=...> with title "Security and tenant tokens" and icon
"shield-halved") to point directly to "/capabilities/security/overview" by
changing its href prop to the non-redirecting path.
In `@capabilities/security/how_to/generate_token_third_party.mdx`:
- Around line 90-98: The three Card components titled "Tenant token payload
reference", "Generate tokens with an SDK", and "Generate tokens without any
library" currently use hrefs under /capabilities/platform/security/* which are
redirecting; update each Card's href to point directly to the final
/capabilities/security/* destination (replace
/capabilities/platform/security/advanced/tenant_token_payload,
/capabilities/platform/security/getting_started, and
/capabilities/platform/security/how_to/generate_token_from_scratch with their
corresponding /capabilities/security/* target URLs) to remove the redirect chain
so the links resolve directly.
In `@capabilities/security/overview.mdx`:
- Line 7: The link in capabilities/security/overview.mdx points to
/capabilities/platform/security/how_to/manage_api_keys which causes a redirect
loop; update the href to the correct internal path
/capabilities/security/how_to/manage_api_keys (the link text "API keys" in the
sentence that also mentions "tenant tokens") so the page links directly to the
Security section without redirects and verify other internal links in
overview.mdx follow the same /capabilities/security/* namespace.
- Around line 64-75: The four Card components titled "Getting started", "Token
from scratch", "Token payload", and "Manage API keys" currently use hrefs under
"/capabilities/platform/security/..." which are redirect sources; update each
Card's href to point directly to the final internal paths under
"/capabilities/security/..." (the actual destination pages) so the links no
longer create redirect chains—locate the Card components in this file and
replace their href values accordingly.
In `@getting_started/glossary.mdx`:
- Line 37: The glossary entry referencing "Tenant tokens" links to the
redirecting path "/capabilities/platform/security/overview"; update the markdown
link target for the "Learn more about tenant tokens" anchor so it points
directly to "/capabilities/security/overview" (replace the URL text in the
sentence that contains "Tenant tokens allow you to restrict search results per
user" or the link text "[Learn more about tenant
tokens](/capabilities/platform/security/overview)" to the non-redirecting path).
- Line 191: The glossary entry currently links to
/capabilities/platform/security/overview which causes a redirect chain; update
the anchor in the sentence ("Learn more about multi-tenancy") to point directly
to /capabilities/security/overview so the link target is changed from
/capabilities/platform/security/overview to /capabilities/security/overview.
In `@resources/comparisons/alternatives.mdx`:
- Line 125: Update the multitenancy link in the comparisons table so it points
directly to /capabilities/security/overview instead of the redirecting
/capabilities/platform/security/overview; locate the table cell containing
"Tenant tokens & multi-tenant indexes" and replace the href target in the link
markup (the link currently shown as [Multitenancy
support](/capabilities/platform/security/overview)) with
/capabilities/security/overview to eliminate the redirect chain.
In `@resources/help/faq.mdx`:
- Line 85: The markdown link "[multitenancy with tenant
tokens](/capabilities/platform/security/overview)" causes an unnecessary
redirect; update the href to point directly to "/capabilities/security/overview"
in resources/help/faq.mdx (the link text "multitenancy with tenant tokens") to
match the change applied in resources/demos/tenant_tokens.mdx and avoid the
redirect.
---
Nitpick comments:
In `@capabilities/platform/infrastructure/backups.mdx`:
- Line 20: The restore instruction is ambiguous about date format and timezone;
update the sentence that asks for "the date you want to restore to" to
explicitly request the date in ISO format and timezone (e.g., "YYYY-MM-DD, UTC")
so support gets a precise timestamp; replace the current phrasing with a short
clear sentence like: "Include your project name and the date to restore to
(format: YYYY-MM-DD, timezone: UTC)."
In `@capabilities/platform/infrastructure/overview.mdx`:
- Line 66: The sentence "Premium Compute is suited for production workloads with
strict latency requirements or very large indexes." is vague—update the wording
in the line containing "Premium Compute is suited for production workloads with
strict latency requirements or very large indexes." to be more specific by
replacing "very large indexes" with a clearer phrase such as "indexes exceeding
several hundred GB" or simply "large indexes" (choose the preferred
alternative), ensuring the revised sentence retains the same meaning and link to
sales@meilisearch.com remains unchanged.
In `@capabilities/platform/infrastructure/version_management.mdx`:
- Line 42: Replace the absolute phrasing "only a few seconds" in the sentence
that starts "**From v1.14 onwards**, upgrades no longer use snapshots for
migration." with a softer phrase such as "typically completes quickly" (and
optionally qualify "minimal downtime" to "minimal downtime in most cases") to
avoid overpromising across different project sizes and conditions.
- Around line 6-9: Remove the draft screenshot TODO JSX comment block (the {/*
Screenshots needed on this page: ... */} comment) from the published content in
version_management.mdx; locate the comment inside the MDX body and delete the
entire block so only the final image embeds remain, preserving the existing doc
tone and structure around the screenshots section (no other edits needed).
In `@capabilities/platform/monitoring/overview.mdx`:
- Line 15: Replace the awkward header string "Indexing latency TTS
(p75/p90/p95/p99)" with a clearer phrase such as "Indexing time-to-search (TTS)
latency (p75/p90/p95/p99)" so the term TTS is expanded on first use and reads
more naturally; update the table cell that contains "Indexing latency TTS
(p75/p90/p95/p99)" accordingly.
In `@capabilities/platform/monitoring/search_performance.mdx`:
- Around line 6-9: Remove the draft JSX comment block containing the screenshot
placeholders (the block that lists "Search latency chart (p75/p90/p95/p99 in ms)
— media_JxXCjcfqpR" and "Maximum search queries per second chart —
media_T1CoksUKsc") from the MDX file search_performance.mdx; delete only that
placeholder comment so the final docs page no longer contains draft metadata and
ensure the remaining content follows the existing docs tone and structure.
In `@capabilities/platform/monitoring/usage_metrics.mdx`:
- Around line 6-9: Remove the internal authoring placeholder comment block that
begins with "Screenshots needed on this page:" including the referenced media
IDs (media_yQbWnbfdrS and media_dv5dHTm4jJ); delete this commentary so the
published page contains only user-facing content and matches the tone/structure
of other docs pages while keeping any necessary screenshot assets integrated via
the normal content/image inclusion flow.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: d6188587-7935-4ca3-8721-b3274b5fc70a
⛔ Files ignored due to path filters (21)
assets/images/platform/billing/billing_tab.pngis excluded by!**/*.pngassets/images/platform/billing/stripe_portal.pngis excluded by!**/*.pngassets/images/platform/infrastructure/new_project_button.pngis excluded by!**/*.pngassets/images/platform/infrastructure/plan_type_selection.pngis excluded by!**/*.pngassets/images/platform/infrastructure/project_creating.pngis excluded by!**/*.pngassets/images/platform/infrastructure/resource_based_config.pngis excluded by!**/*.pngassets/images/platform/infrastructure/usage_based_config.pngis excluded by!**/*.pngassets/images/platform/infrastructure/version_update_available.pngis excluded by!**/*.pngassets/images/platform/infrastructure/version_update_modal.pngis excluded by!**/*.pngassets/images/platform/infrastructure/version_updating.pngis excluded by!**/*.pngassets/images/platform/management/experimental_features.pngis excluded by!**/*.pngassets/images/platform/management/webhooks_add.pngis excluded by!**/*.pngassets/images/platform/management/webhooks_empty.pngis excluded by!**/*.pngassets/images/platform/monitoring/api_calls.pngis excluded by!**/*.pngassets/images/platform/monitoring/bandwidth.pngis excluded by!**/*.pngassets/images/platform/monitoring/batch_detail.pngis excluded by!**/*.pngassets/images/platform/monitoring/batches_list.pngis excluded by!**/*.pngassets/images/platform/monitoring/indexing_latency.pngis excluded by!**/*.pngassets/images/platform/monitoring/search_latency.pngis excluded by!**/*.pngassets/images/platform/monitoring/search_performance_trace.pngis excluded by!**/*.pngassets/images/platform/monitoring/search_qps.pngis excluded by!**/*.png
📒 Files selected for processing (37)
capabilities/overview.mdxcapabilities/platform/billing/invoices.mdxcapabilities/platform/billing/overview.mdxcapabilities/platform/billing/payment_methods.mdxcapabilities/platform/billing/pricing_model.mdxcapabilities/platform/infrastructure/backups.mdxcapabilities/platform/infrastructure/create_a_project.mdxcapabilities/platform/infrastructure/manage_resources.mdxcapabilities/platform/infrastructure/overview.mdxcapabilities/platform/infrastructure/regions.mdxcapabilities/platform/infrastructure/sharding_and_replication.mdxcapabilities/platform/infrastructure/version_management.mdxcapabilities/platform/management/experimental_features.mdxcapabilities/platform/management/overview.mdxcapabilities/platform/management/webhooks.mdxcapabilities/platform/monitoring/indexing_performance.mdxcapabilities/platform/monitoring/overview.mdxcapabilities/platform/monitoring/search_performance.mdxcapabilities/platform/monitoring/usage_metrics.mdxcapabilities/platform/overview.mdxcapabilities/platform/teams/getting_started.mdxcapabilities/platform/teams/how_to/configure_sso_for_team.mdxcapabilities/platform/teams/how_to/manage_team_roles.mdxcapabilities/platform/teams/overview.mdxcapabilities/security/getting_started.mdxcapabilities/security/how_to/generate_token_from_scratch.mdxcapabilities/security/how_to/generate_token_third_party.mdxcapabilities/security/how_to/manage_api_keys.mdxcapabilities/security/overview.mdxdocs.jsongetting_started/features.mdxgetting_started/frameworks/laravel.mdxgetting_started/glossary.mdxresources/comparisons/alternatives.mdxresources/demos/tenant_tokens.mdxresources/help/faq.mdxresources/self_hosting/security/overview.mdx
|
|
||
| ### Step 3: Consider vCPU for high query volume | ||
|
|
||
| RAM is almost always the bottleneck. However, if your workload involves sustained high QPS (hundreds of searches per second), choose a tier with more vCPUs. Tiers L and below share 2 vCPUs, while XL and above provide dedicated cores. |
There was a problem hiding this comment.
Clarify vCPU statement to match the tier table.
“Tiers L and below share 2 vCPUs” conflicts with XS/S values in the table. Consider wording like “share CPU resources” and keep dedicated-core distinction for XL+.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@capabilities/platform/billing/pricing_model.mdx` at line 103, Update the
sentence that reads "Tiers L and below share 2 vCPUs" to avoid conflicting with
the tier table by using wording like "share CPU resources" (or "share CPU
resources across instances") and retain the dedicated-core phrasing for "XL and
above provide dedicated cores"; specifically edit the line containing the phrase
"Tiers L and below share 2 vCPUs" so it aligns with the XS/S table entries and
clearly contrasts shared CPU resources vs. XL+ dedicated cores.
| </Warning> | ||
|
|
||
| <Frame> | ||
| <img src="/images/platform/infrastructure/resource_settings.png" alt="Meilisearch Cloud project resource settings panel" /> |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check image path patterns in all platform documentation files
echo "=== Checking image path patterns in platform docs ==="
rg -n 'src="/.*images/' capabilities/platform/ --type mdxRepository: meilisearch/documentation
Length of output: 167
🏁 Script executed:
#!/bin/bash
# Search for image src patterns in platform documentation
echo "=== Searching for image src patterns in platform docs ==="
rg -n 'src="/' capabilities/platform/ | grep -i images
echo ""
echo "=== Checking the specific file ==="
cat -n capabilities/platform/infrastructure/manage_resources.mdx | grep -E 'src=|img'Repository: meilisearch/documentation
Length of output: 5737
Update image paths to match documentation standard.
The image paths on lines 50 and 60 are missing the /assets prefix. All other platform documentation files consistently use /assets/images/platform/... pattern. Update both paths:
- Line 50:
/images/platform/infrastructure/resource_settings.png→/assets/images/platform/infrastructure/resource_settings.png - Line 60:
/images/platform/infrastructure/plan_selection.png→/assets/images/platform/infrastructure/plan_selection.png
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@capabilities/platform/infrastructure/manage_resources.mdx` at line 50, Update
the two <img> tag src attributes in the manage_resources.mdx content so they
include the /assets prefix; change the src value
"/images/platform/infrastructure/resource_settings.png" (the image tag shown in
the diff) to "/assets/images/platform/infrastructure/resource_settings.png" and
likewise change "/images/platform/infrastructure/plan_selection.png" to
"/assets/images/platform/infrastructure/plan_selection.png" to match the
documentation standard used across platform docs.
|
|
||
| | Code | Location | Recommended use case | | ||
| |------|----------|---------------------| | ||
| | `FRA` | Frankfurt, Germany | European users (GDPR-compliant) | |
There was a problem hiding this comment.
Avoid implying GDPR compliance is guaranteed by region alone.
Line 12 currently states GDPR-compliant, which can be read as a legal guarantee. Region choice helps with data residency, but compliance depends on broader legal and operational controls.
🛡️ Suggested wording update
-| `FRA` | Frankfurt, Germany | European users (GDPR-compliant) |
+| `FRA` | Frankfurt, Germany | European users with EU data residency requirements |-**Consider data residency requirements.** If your application handles personal data subject to GDPR or other regional regulations, ensure your project is hosted in a compliant region. `FRA` and `LON` are located within the EU and UK.
+**Consider data residency requirements.** If your application handles personal data subject to GDPR or other regional regulations, host data in an appropriate region and validate your legal/compliance obligations. `FRA` and `LON` are located in the EU and UK.Also applies to: 23-23
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@capabilities/platform/infrastructure/regions.mdx` at line 12, The table row
that labels `FRA` as "GDPR-compliant" (and the similar entry at the other
occurrence) should be reworded to avoid implying legal compliance is guaranteed
by region alone; update the `FRA` row text to something like "Frankfurt, Germany
— data stored in the EU (may help meet GDPR-related data residency requirements;
compliance depends on contractual and operational controls)" and make the same
wording change for the other instance so both entries emphasize data residency
benefits without asserting automatic GDPR compliance.
| <Card title="Security" href="/capabilities/platform/security/overview"> | ||
| Secure your data with API keys and tenant tokens | ||
| </Card> |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check if security files exist under platform directory or only via redirects
echo "=== Checking for physical security files under platform ==="
fd -t f -e mdx -e md "overview" capabilities/platform/security/ 2>/dev/null || echo "No security files found under capabilities/platform/security/"
echo ""
echo "=== Checking for security files at current location ==="
fd -t f -e mdx -e md "overview" capabilities/security/
echo ""
echo "=== Verifying redirect configuration ==="
cat docs.json | jq '.redirects[] | select(.source | contains("/capabilities/platform/security"))' 2>/dev/null || grep -A2 "capabilities/platform/security" docs.jsonRepository: meilisearch/documentation
Length of output: 1278
Change link to point directly to security documentation.
Line 38 links to /capabilities/platform/security/overview, which redirects to /capabilities/security/overview. The security files physically exist at capabilities/security/, not under capabilities/platform/security/. For internal documentation links, use the direct path /capabilities/security/overview instead of relying on redirects.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@capabilities/platform/overview.mdx` around lines 38 - 40, Update the Card
with title "Security" so its href points directly to the real documentation
path: change the href value in the Card element (the Card with title="Security")
from "/capabilities/platform/security/overview" to
"/capabilities/security/overview" to avoid relying on redirects.
| - View all projects in the team | ||
| - Perform search queries | ||
| - View project settings and [API keys](/capabilities/security/how_to/manage_api_keys) | ||
| - View project settings and [API keys](/capabilities/platform/security/how_to/manage_api_keys) |
There was a problem hiding this comment.
Security link creates redirect chain.
The Security pages remain at /capabilities/security/* (based on docs.json redirects), so this link should point directly to /capabilities/security/how_to/manage_api_keys rather than the redirect source /capabilities/platform/security/how_to/manage_api_keys.
🔗 Recommended fix
-- View project settings and [API keys](/capabilities/platform/security/how_to/manage_api_keys)
+- View project settings and [API keys](/capabilities/security/how_to/manage_api_keys)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - View project settings and [API keys](/capabilities/platform/security/how_to/manage_api_keys) | |
| - View project settings and [API keys](/capabilities/security/how_to/manage_api_keys) |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@capabilities/platform/teams/how_to/manage_team_roles.mdx` at line 29, Update
the redirecting link in manage_team_roles.mdx: replace the href
"/capabilities/platform/security/how_to/manage_api_keys" with the canonical
"/capabilities/security/how_to/manage_api_keys" for the "API keys" link so it
points directly to the destination and avoids the redirect chain.
|
|
||
| - [Multi-search](/reference/api/multi-search/perform-a-multi-search) (search across multiple indexes) | ||
| - [Multi-tenancy](/capabilities/security/overview) | ||
| - [Multi-tenancy](/capabilities/platform/security/overview) |
There was a problem hiding this comment.
Use the canonical Security link instead of the redirected Platform path.
Given the move back to top-level Security, link directly to /capabilities/security/overview to avoid relying on redirects.
As per coding guidelines, when adding or moving content, update links from related pages so users can find it.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@getting_started/frameworks/laravel.mdx` at line 187, Replace the markdown
link target for "[Multi-tenancy]" that currently points to
"/capabilities/platform/security/overview" with the canonical Security path
"/capabilities/security/overview" so the link goes directly to the top-level
Security overview rather than relying on a redirect.
| - [ ] Use HTTPS via a [reverse proxy](/resources/self_hosting/deployment/running_production) or [direct SSL](/resources/self_hosting/security/http2_ssl) | ||
| - [ ] Use the **search API key** (not the admin key) in front-end applications | ||
| - [ ] Consider [tenant tokens](/capabilities/security/overview) for multi-tenant search | ||
| - [ ] Consider [tenant tokens](/capabilities/platform/security/overview) for multi-tenant search |
There was a problem hiding this comment.
Point tenant-token link to the top-level Security page.
Please switch this to /capabilities/security/overview so this checklist references the canonical docs location.
As per coding guidelines, when adding or moving content, update links from related pages so users can find it.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@resources/self_hosting/security/overview.mdx` at line 34, Update the
tenant-token link in the checklist line in
resources/self_hosting/security/overview.mdx by replacing the current path
"/capabilities/platform/security/overview" with the canonical
"/capabilities/security/overview" so the checkbox reference to "[tenant tokens]"
points to the top-level Security page; locate the checklist item string (the
line containing "[ ] Consider [tenant tokens]") and change only the URL portion
to the new path.
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Remove /capabilities/platform/security redirects and link directly to /capabilities/security pages in: - capabilities/security/overview.mdx - resources/comparisons/alternatives.mdx - resources/demos/tenant_tokens.mdx - resources/help/faq.mdx - getting_started/glossary.mdx - capabilities/overview.mdx Resolves all 12 CodeRabbit comments on PR #3542.
|
|
||
| ### Interactive estimator | ||
|
|
||
| Use the [pricing page calculator](https://www.meilisearch.com/pricing) to get a recommendation based on your document count, document type, and expected search volume. |
There was a problem hiding this comment.
does this exist? 🤔
|
not sure if its just me but I'm seeing a big lag when I try to switch pages - like a few seconds before the next page loads. Its not the case for me on live |
There was a problem hiding this comment.
Team settings is organisation now. Not critical but diffrent
There was a problem hiding this comment.
this screen has a warning banner about older versions that doesn't make sense in this context
There was a problem hiding this comment.
Pro plans to be removed this week
There was a problem hiding this comment.
dynamic search rules removed now
There was a problem hiding this comment.
this batch view will change dramatically in the next week or so - ok to update at that stage but just as a heads up this screen won't exist
There was a problem hiding this comment.
same for this (batch view changes)
| | Plan | Included searches | Extra searches | Included documents | Extra documents | Resources | | ||
| |------|------------------|----------------|--------------------|-----------------|-----------| | ||
| | **Build** | 50K/month | $0.40 per 1,000 | 100K | $0.30 per 1,000 | Shared | | ||
| | **Pro** | 250K/month | $0.30 per 1,000 | 1M | $0.20 per 1,000 | Dedicated | |
There was a problem hiding this comment.
Pro to be removed this week
| | Plan | Included searches | Included documents | Resources | Support | | ||
| |------|------------------|--------------------|-----------|---------| | ||
| | **Build** | 50K/month, then $0.40 per 1,000 | 100K, then $0.30 per 1,000 | Shared | Community (Discord) | | ||
| | **Pro** | 250K/month, then $0.30 per 1,000 | 1M, then $0.20 per 1,000 | Dedicated | Meilisearch team | |
There was a problem hiding this comment.
pro to be removed
|
|
||
| For zero-downtime upgrades including indexing, use replication and upgrade node by node. Contact [sales@meilisearch.com](mailto:sales@meilisearch.com) to set this up as part of an Enterprise plan. | ||
|
|
||
| **From v1.14 onwards**, upgrades no longer use snapshots for migration. The process takes only a few seconds with minimal downtime. For projects on older versions, upgrade duration may be longer depending on index size. |
There was a problem hiding this comment.
we no longer have projects below 1.14 since Jepthers upgrade work, so we can remove this
| |---------|-------------| | ||
| | **Edit documents by function** | Apply custom transformations to documents using Rhai scripts, from simple formatting changes to complex logic | | ||
| | **"CONTAINS" and "STARTS_WITH" filters** | Adds the `CONTAINS` filter operator to filter documents where an attribute includes a specific substring | | ||
| | **Dynamic Search Rules** | Enable rules that change how search results are ordered when specific conditions are met (e.g. pinning) | |
There was a problem hiding this comment.
This is not there anymore since we're selling it
Summary
Adds a full Platform capability section documenting Meilisearch Cloud, based on real Cloud UI screenshots and accurate product details.
Infrastructure
Billing
Monitoring
Management
Other
Test plan
Summary by CodeRabbit