Skip to content

Conversation

@B4nan
Copy link
Member

@B4nan B4nan commented Jan 28, 2026

Summary

  • Fix boolean query parameters showing empty values in API tester (e.g., ?clean= instead of ?clean=true)
  • Move API clients box from markdown injection to direct React rendering with BrowserOnly (fixes search pollution and markdown export)
  • Move LLM buttons from markdown injection to React portal rendering (fixes search pollution and markdown export)
  • Add missing properties to OpenAPI schemas to fix @redocly/cli 2.15.0 validation errors
  • Skip apiKey auth schemes in API tester (only support httpBearer)
  • Improve response examples display:
    • Show Example tab first (before Schema)
    • Skip auto-generated example when explicit example exists
    • Expand first level of nested schema items by default
  • Update OpenAPI plugin packages to 4.7.1 and @redocly/cli to 2.15.0

Test plan

  • Test boolean query parameters in API tester (e.g., Dataset items clean param)
  • Verify API clients box renders correctly and doesn't appear in search or .md export
  • Verify LLM buttons render after heading and don't appear in search or .md export
  • Verify API tester only shows Bearer token auth option
  • Verify response examples show Example tab first with explicit examples preferred
  • Verify first level of schema is expanded by default
  • OpenAPI lint passes (npm run openapi:lint:redocly)

🤖 Generated with Claude Code

Closes #2204
Closes #1983
Closes #1943
Closes #1327
Closes #1174

- Fix boolean query parameters showing empty values in API tester
  (e.g., `?clean=` instead of `?clean=true`). The issue was in the
  `explode: true` handling where `Object.entries()` was called on
  primitive values parsed from JSON.

- Move API clients box from decorator to direct React rendering,
  preventing "Clients" heading from appearing in search results.

- Update docusaurus-theme-openapi-docs and docusaurus-plugin-openapi-docs
  to 4.7.1, and @redocly/cli to 2.15.0.

- Skip apiKey auth schemes in API tester (only support httpBearer).

- Improve code signing: skip silently when APIFY_SIGNING_TOKEN is missing
  instead of spamming logs.

- Fix deprecation warning by moving onBrokenMarkdownLinks to markdown.hooks.

- Style improvements for the API clients box.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@github-actions github-actions bot added this to the 133rd sprint - Tooling team milestone Jan 28, 2026
@github-actions github-actions bot added the t-tooling Issues with this label are in the ownership of the tooling team. label Jan 28, 2026
@apify-service-account
Copy link

Preview for this PR was built for commit 16065d7 and is ready at https://pr-2207.preview.docs.apify.com!

@B4nan B4nan added the adhoc Ad-hoc unplanned task added during the sprint. label Jan 28, 2026
B4nan and others added 2 commits January 28, 2026 16:34
…tion

Similar to the clients box fix, render LLMButtons directly via swizzled
ApiItem component instead of injecting into markdown content.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add unevaluated properties that caused validation failures after
@redocly/cli 2.15.0 update with stricter validation:

- Run.yaml: metamorphs as array of Metamorph objects
- RunMeta.yaml: clientIp, userAgent, scheduleId, scheduledAt
- Version.yaml: gitRepoUrl, tarballUrl, gitHubGistUrl
- CreateOrUpdateVersionRequest.yaml: same as Version.yaml
- DatasetSchemaValidationError.yaml: restructured with type/message/data
- RequestDraft.yaml: id property
- StoreListActor.yaml: isWhiteListedForAgenticPayment
- New Metamorph.yaml schema for metamorph event details

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit 9c234d9 and is ready at https://pr-2207.preview.docs.apify.com!

@B4nan B4nan changed the title fix(api): Fix boolean query params and improve OpenAPI plugin fix(api): Fix boolean query params, search pollution, and OpenAPI schemas Jan 28, 2026
Instead of swizzling ApiItem (which didn't work with the openapi theme),
render LLMButtons via the existing patch using a React portal that
positions it after the heading element.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@B4nan B4nan force-pushed the fix/openapi-plugin-improvements branch from 90496d8 to b506312 Compare January 28, 2026 16:14
@apify-service-account
Copy link

Preview for this PR was built for commit 90496d8 and is ready at https://pr-2207.preview.docs.apify.com!

@apify-service-account
Copy link

Preview for this PR was built for commit b506312 and is ready at https://pr-2207.preview.docs.apify.com!

@janbuchar
Copy link
Contributor

Could you please explain how the missing schemas happened? Did they get lost during the recent updates? If not, how did you discover that they're missing?

@B4nan
Copy link
Member Author

B4nan commented Jan 28, 2026

I updated redocly, I think they weren’t checking this before.

Copy link
Contributor

@janbuchar janbuchar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand the docs code, but the changes to the spec look good to me

@TC-MO
Copy link
Contributor

TC-MO commented Jan 28, 2026

Is it just me or those chevron look cutoff?
image

@B4nan B4nan requested a review from TC-MO January 28, 2026 20:00
@apify-service-account
Copy link

Preview for this PR was built for commit 89c21b3 and is ready at https://pr-2207.preview.docs.apify.com!

@B4nan
Copy link
Member Author

B4nan commented Jan 28, 2026

They indeed do, but its not related to the changes from this PR. Let me try to fix that too.

The API clients box was appearing in the .md versions of API pages.
Wrapping it in BrowserOnly ensures it only renders client-side.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@B4nan B4nan force-pushed the fix/openapi-plugin-improvements branch from 89c21b3 to 09d67d1 Compare January 28, 2026 20:03
@apify-service-account
Copy link

Preview for this PR was built for commit 09d67d1 and is ready at https://pr-2207.preview.docs.apify.com!

B4nan and others added 2 commits January 29, 2026 11:23
- Show Example tab first (before Schema)
- Skip auto-generated example when explicit example exists
- Expand first level of nested schema items by default

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit e1cd9879 and is ready at https://pr-2207.preview.docs.apify.com!

Patch files contain git hashes that trigger false positives.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit 4956ca55 and is ready at https://pr-2207.preview.docs.apify.com!

@B4nan
Copy link
Member Author

B4nan commented Jan 29, 2026

I've found one more saved convo from slack about this, and added final improvement:

  • if there is an explicit example, we show that instead of the generated one
  • the example is the first tab
  • second tab is schema, which is now expanded by default (only the first level is)

@apify-service-account
Copy link

Preview for this PR was built for commit b0407725 and is ready at https://pr-2207.preview.docs.apify.com!

Closes #1174

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit 617a7950 and is ready at https://pr-2207.preview.docs.apify.com!

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit 3d98d930 and is ready at https://pr-2207.preview.docs.apify.com!

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@apify-service-account
Copy link

Preview for this PR was built for commit e0b175cb and is ready at https://pr-2207.preview.docs.apify.com!

@B4nan
Copy link
Member Author

B4nan commented Jan 29, 2026

Should be ready to merge. I went through the existing issues and tried to fix a few more things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team.

Projects

None yet

5 participants