Skip to content

feat: migrate Apiary public API docs to Mintlify with interactive playground - #2

Open
Nitesh-BE wants to merge 16 commits into
masterfrom
developerPortalChanges
Open

feat: migrate Apiary public API docs to Mintlify with interactive playground#2
Nitesh-BE wants to merge 16 commits into
masterfrom
developerPortalChanges

Conversation

@Nitesh-BE

Copy link
Copy Markdown
Collaborator

Summary

  • Adds a Public API tab as the first tab in the Mintlify navigation, covering all 27 API groups and 159 endpoints migrated from apiary.apib
  • Provides an interactive request playground for every endpoint (equivalent to Apiary's "Try it") via Mintlify's native OpenAPI integration — users can send live API requests directly from the docs site
  • Migrates the full Introduction page (auth, rate limiting, pagination, HTTP status codes, error format, API groups index) and Change Logs page (36 entries, 2023–2026) verbatim from Apiary
  • OpenAPI specs include ApiKeyAuth globally and per-operation, with x-api-key as an explicit required header so the playground always prompts for the API key

Changes

docs.json

  • Adds "Public API" tab (first position) with all 27 navigation groups
  • Registers 5 split OpenAPI spec files (api-reference/openapi-1.jsonopenapi-5.json) at the root to power the interactive playground

api-reference/overview.mdx

  • Full Introduction page from apiary.apib: base URL, authentication warning, rate limiting, pagination rules with examples, HTTP status codes table, error response format, API groups index

api-reference/change-logs.mdx

  • 36 changelog entries migrated verbatim (2023-06-30 → 2026-07-03)

api-reference/openapi-{1..5}.json (5 files, ~150 KB total)

  • OpenAPI 3.0.3 spec split into 5 files to stay within size limits
  • All 159 endpoints across 27 groups with full path/method/parameter definitions
  • Global + per-operation ApiKeyAuth security; x-api-key required header on every operation

api-reference/<group>/<endpoint>.mdx (162 files)

  • One MDX stub per endpoint in the format:
    ---
    title: "Operation Summary"
    openapi: "METHOD /path"
    ---
  • Groups: Business, Custom Fields, User, Reviews, Contact, Contact V2, Campaign, Aggregation, Report, Survey, Business Media, Social, Employee, Conversation, Subscription, Webhook, Competitor, Competitor AI, Insight AI, Google Q&A, Google Services, FAQ, Listing, GMB Products, Search AI, Ticketing, Integration

Test plan

  • Verify "Public API" tab appears first in the Mintlify site navigation
  • Click any endpoint page — confirm the interactive playground loads with an x-api-key input field
  • Confirm Introduction and Change Logs pages render correctly under the Overview group
  • Spot-check a few groups (Business, Reviews, Listing) to verify all endpoints appear in the sidebar
  • Test a live API request from the playground using a valid API key

Generated by Claude Code

Nitesh-BE added 13 commits July 16, 2026 14:22
Author: Nitesh M <maddala.nitesh@birdeye.com>
… Report)

Author: Nitesh M <maddala.nitesh@birdeye.com>
…onversation, Subscription, Webhook)

Author: Nitesh M <maddala.nitesh@birdeye.com>
…le Q&A, Google Services)

Author: Nitesh M <maddala.nitesh@birdeye.com>
…eting, Integration)

Author: Nitesh M <maddala.nitesh@birdeye.com>
…, User, Insight AI, Social, Google Services (part 1)
…ion, Contact V2, Survey, Employee, Google Q&A (part 1)
…ct, Conversation, Ticketing, Competitor AI, Business Media (part 1)
Adds the `api` configuration block to docs.json to unlock:
- Interactive "Try It" playground on every API reference page
- Persistent x-api-key input field (set once, used across all requests)
- Correct base URL wired from OpenAPI servers block
Maps every MDX page to its exact "METHOD /path" in the corresponding
OpenAPI spec so Mintlify can resolve each operation and render:
- Interactive API playground with x-api-key header
- Request parameter tables (path, query, header)
- Request body schema with field descriptions
- Response schema documentation

Previously all openapi: values used simplified/guessed paths that did
not match any operation in the spec files, causing Mintlify to skip
rendering the playground and field docs entirely.
…rences

- Add api-reference/openapi.yaml from master (163 operations, full field
  descriptions, request/response schemas, parameter docs, enum values)
- Remove api-reference/openapi-{1..5}.json skeleton files that had empty
  object schemas with no field descriptions
- Update docs.json to reference single openapi.yaml instead of 5 split files
- Fix 11 MDX openapi: path values to match exact keys in openapi.yaml:
  - update-business: {business_id} -> {businessId}
  - delete-business: {business_id} -> {business_Id}
  - get-custom-field: add ?locationBizNumber={locationBizNumber} query param
  - list-custom-fields: add ?locationBizNumber={locationBizNumber} query param
  - add-aggregation-link: {businessId} -> {business_id}
  - get-competitor-child-business: {EnterpriseBusinessNumber} -> {EnterpriseCompetitorBusinessId}
  - add-products-to-location: PUT -> POST
  - remove-products-from-location: PUT -> POST
  - get-accuracy-report: add ?page-size=100&start-index=0
  - get-sentiment-report: add ?page-size=100&start-index=0
  - get-all-ticket-data: add trailing ?
- Add create-child-competitor-enterprise.mdx (POST /v1/signup/competitor/{businessId})
- Add new competitor page to docs.json navigation Competitor group
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant