Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughAdds a new API Reference navigation item and a new documentation page describing the POST endpoint to remove workspace members, including path and body parameters, required scopes, response codes, validation errors, and example requests/responses. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 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: 1
🧹 Nitpick comments (2)
docs/api-reference/members/remove-workspace-member.md (2)
87-90: Minor: Inconsistent punctuation in list items.Line 88 is missing a period at the end, unlike line 89.
Proposed fix
- Member is deactivated in all projects. -- Member is removed from all teamspaces and shared pages +- Member is removed from all teamspaces and shared pages. - If `remove_seat` is `true` and unused seats exist, one seat is removed from your plan.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/api-reference/members/remove-workspace-member.md` around lines 87 - 90, The second bullet "Member is removed from all teamspaces and shared pages" is missing a trailing period; update that list item to end with a period so it matches the other bullets ("Member is deactivated in all projects." and "If `remove_seat` is `true` and unused seats exist, one seat is removed from your plan.").
151-157: ResponsePanel contains invalid JSON for 204 response.The
ResponsePaneluses a JSON code block but contains plain textNo Content. Since 204 responses have no body, consider either removing the code block or using a different format.Proposed fix
<ResponsePanel status="204"> -```json -No Content -``` +*No response body* </ResponsePanel>🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/api-reference/members/remove-workspace-member.md` around lines 151 - 157, The ResponsePanel with status="204" wrongly contains a JSON code block with plain text "No Content"; update the ResponsePanel (status="204") to remove the invalid ```json``` code block and replace it with a plain text note such as "*No response body*" (or remove the content entirely) so the documentation reflects that a 204 has no response body.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/api-reference/members/remove-workspace-member.md`:
- Around line 19-31: The document skips from h1 to h3 causing an MD001 lint
violation; change the "### Path parameters" heading to an h2 ("## Path
parameters") and similarly promote any sibling sections under the <div
class="params-section"> (e.g., other "###" headings) to h2 so headings increment
by one; ensure the ApiParam block remains unchanged and that the new h2 wraps
the <div class="params-section"> content to restore proper heading hierarchy.
---
Nitpick comments:
In `@docs/api-reference/members/remove-workspace-member.md`:
- Around line 87-90: The second bullet "Member is removed from all teamspaces
and shared pages" is missing a trailing period; update that list item to end
with a period so it matches the other bullets ("Member is deactivated in all
projects." and "If `remove_seat` is `true` and unused seats exist, one seat is
removed from your plan.").
- Around line 151-157: The ResponsePanel with status="204" wrongly contains a
JSON code block with plain text "No Content"; update the ResponsePanel
(status="204") to remove the invalid ```json``` code block and replace it with a
plain text note such as "*No response body*" (or remove the content entirely) so
the documentation reflects that a 204 has no response body.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: e5ac344a-f325-4901-9474-7132a9b0dd00
📒 Files selected for processing (2)
docs/.vitepress/config.mtsdocs/api-reference/members/remove-workspace-member.md
| <div class="params-section"> | ||
|
|
||
| ### Path parameters | ||
|
|
||
| <div class="params-list"> | ||
|
|
||
| <ApiParam name="slug" type="string" :required="true"> | ||
|
|
||
| The unique identifier (slug) for the workspace. | ||
|
|
||
| </ApiParam> | ||
|
|
||
| </div> |
There was a problem hiding this comment.
Heading level skips from h1 to h3.
Per the markdownlint MD001 rule, heading levels should increment by one. The document jumps from # Remove workspace member (h1) directly to ### Path parameters (h3), skipping h2.
Consider wrapping the parameters sections under an h2 heading for proper document structure:
Proposed fix
<div class="params-section">
+## Parameters
+
### Path parameters
📝 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.
| <div class="params-section"> | |
| ### Path parameters | |
| <div class="params-list"> | |
| <ApiParam name="slug" type="string" :required="true"> | |
| The unique identifier (slug) for the workspace. | |
| </ApiParam> | |
| </div> | |
| <div class="params-section"> | |
| ## Parameters | |
| ### Path parameters | |
| <div class="params-list"> | |
| <ApiParam name="slug" type="string" :required="true"> | |
| The unique identifier (slug) for the workspace. | |
| </ApiParam> | |
| </div> |
🧰 Tools
🪛 markdownlint-cli2 (0.21.0)
[warning] 21-21: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3
(MD001, heading-increment)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/api-reference/members/remove-workspace-member.md` around lines 19 - 31,
The document skips from h1 to h3 causing an MD001 lint violation; change the
"### Path parameters" heading to an h2 ("## Path parameters") and similarly
promote any sibling sections under the <div class="params-section"> (e.g., other
"###" headings) to h2 so headings increment by one; ensure the ApiParam block
remains unchanged and that the new h2 wraps the <div class="params-section">
content to restore proper heading hierarchy.
There was a problem hiding this comment.
Actionable comments posted: 2
♻️ Duplicate comments (1)
docs/api-reference/members/remove-workspace-member.md (1)
21-21:⚠️ Potential issue | 🟡 MinorPromote these section headings to
##.The page still jumps from the h1 on Line 7 straight to h3 section headings, so markdownlint MD001 remains unresolved.
Also applies to: 36-36, 57-57, 65-65, 85-85
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/api-reference/members/remove-workspace-member.md` at line 21, The document uses h3 (###) for major sections like the "Path parameters" heading (and the other section headings noted) which skips from the page h1 to h3 and triggers markdownlint MD001; change those headings from ### to ## so they are level-2 headings (promote "Path parameters" and any other headings currently using three hashes to two hashes) to restore proper heading hierarchy.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/api-reference/members/remove-workspace-member.md`:
- Around line 99-107: The cURL example in the remove-workspace-member snippet
contains an inline shell comment after a backslash which breaks copy-paste;
update the example so the auth alternative (-H "Authorization: Bearer
$PLANE_OAUTH_TOKEN") is not placed on a continued line—either move that comment
to its own separate code block/snippet or place it on its own non-continued line
above/below the curl command so the backslashes and continuations remain valid
when pasted.
- Around line 148-152: The ResponsePanel for the 204 response currently contains
a JSON code fence with "No Content", which implies a payload; update the
<ResponsePanel status="204"> usage to not include a JSON block—either leave the
panel empty or replace the fenced JSON with plain text like "No response body"
(no JSON formatting). Ensure you only use <ResponsePanel> JSON examples for
responses that actually return a body; keep the change scoped to the
ResponsePanel with status="204".
---
Duplicate comments:
In `@docs/api-reference/members/remove-workspace-member.md`:
- Line 21: The document uses h3 (###) for major sections like the "Path
parameters" heading (and the other section headings noted) which skips from the
page h1 to h3 and triggers markdownlint MD001; change those headings from ### to
## so they are level-2 headings (promote "Path parameters" and any other
headings currently using three hashes to two hashes) to restore proper heading
hierarchy.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: ebc45f3c-df28-47ad-8a71-c9d7b9644257
📒 Files selected for processing (1)
docs/api-reference/members/remove-workspace-member.md
| curl -X POST \ | ||
| "https://api.plane.so/api/v1/workspaces/my-workspace/members/remove/" \ | ||
| -H "X-API-Key: $PLANE_API_KEY" \ | ||
| # Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN" \ | ||
| -H "Content-Type: application/json" \ | ||
| -d '{ | ||
| "email": "jane@example.com", | ||
| "remove_seat": true | ||
| }' |
There was a problem hiding this comment.
The cURL example breaks when copied into a shell.
The inline # Or use ... comment comes after a line continuation, so the shell treats the rest of the command as commented out. Move the auth alternative outside the continued command or split it into a separate snippet.
Suggested fix
curl -X POST \
"https://api.plane.so/api/v1/workspaces/my-workspace/members/remove/" \
-H "X-API-Key: $PLANE_API_KEY" \
- # Or use -H "Authorization: Bearer $PLANE_OAUTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "jane@example.com",
"remove_seat": true
}'
+
+# Or replace the API key header with:
+# -H "Authorization: Bearer $PLANE_OAUTH_TOKEN"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/api-reference/members/remove-workspace-member.md` around lines 99 - 107,
The cURL example in the remove-workspace-member snippet contains an inline shell
comment after a backslash which breaks copy-paste; update the example so the
auth alternative (-H "Authorization: Bearer $PLANE_OAUTH_TOKEN") is not placed
on a continued line—either move that comment to its own separate code
block/snippet or place it on its own non-continued line above/below the curl
command so the backslashes and continuations remain valid when pasted.
| <ResponsePanel status="204"> | ||
|
|
||
| ```json | ||
| No Content | ||
| ``` |
There was a problem hiding this comment.
Don’t present a 204 response as JSON.
No Content inside a json fence implies the endpoint returns a JSON payload, but a 204 response has no body. Use plain text such as “No response body” or leave the panel empty if the component supports it. As per coding guidelines, docs/api-reference/**/*.md: Use <ResponsePanel> component for syntax-highlighted API response JSON examples.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/api-reference/members/remove-workspace-member.md` around lines 148 -
152, The ResponsePanel for the 204 response currently contains a JSON code fence
with "No Content", which implies a payload; update the <ResponsePanel
status="204"> usage to not include a JSON block—either leave the panel empty or
replace the fenced JSON with plain text like "No response body" (no JSON
formatting). Ensure you only use <ResponsePanel> JSON examples for responses
that actually return a body; keep the change scoped to the ResponsePanel with
status="204".
Description
Type of Change
Screenshots and Media (if applicable)
Test Scenarios
References
Summary by CodeRabbit