Skip to content

Boost Endpoint API Documentation #36

@AuraMindNest

Description

@AuraMindNest

Problem

The boost_endpoint app exposes HTTP routes for operators and integrators, but there is no documentation describing the API surface. Without docs, external consumers cannot integrate with the add-or-update flow, and operators cannot verify their deployment is working. The asynchronous 202/task-ID pattern is non-obvious and needs explicit documentation covering request shapes, response shapes, authentication, and task status polling.

Acceptance Criteria

  • A docs/api.md (or equivalent) file documents all HTTP endpoints: GET /boost/info/ and POST /boost/add-or-update/
  • Each endpoint documents: HTTP method, URL path, request headers (including auth token format), request body schema (with field types and required/optional), response status codes, and response body schema
  • The POST /add-or-update/ documentation explains the asynchronous flow: request -> 202 Accepted with task_id -> poll task status via Celery result backend or a future status endpoint
  • Example curl commands are provided for each endpoint (with placeholder tokens)
  • Authentication requirements are documented: token format, how to obtain a token, which Weblate permissions are required
  • Error response shapes are documented: 400 validation errors, 401/403 auth errors, 500 server errors
  • The doc references the serializer field definitions from views.py to stay in sync

Implementation Notes

Use a single Markdown file with clear sections per endpoint. Include a "Quick Start" section at the top showing the minimum viable integration (get token, POST add-or-update, check task). For the async flow diagram, a simple text-based sequence is sufficient (no Mermaid required unless the team prefers it). Cross-reference the README.md for deployment instructions. This doc is the primary reference for operators who will call the endpoint from CI/CD pipelines or admin scripts.

References

  • Related files: docs/api.md (new), src/boost_weblate/views.py, src/boost_weblate/urls.py
  • Depends on: Andrew's views.py and urls.py items (for the exact route and field definitions)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions