Skip to content

Document the sync API contract and fix onboarding gaps#9

Open
aurpsis-aai wants to merge 3 commits into
mainfrom
aurpsis/sync-api-docs
Open

Document the sync API contract and fix onboarding gaps#9
aurpsis-aai wants to merge 3 commits into
mainfrom
aurpsis/sync-api-docs

Conversation

@aurpsis-aai

@aurpsis-aai aurpsis-aai commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Fills the documentation gaps a customer hits when standing up the sync stack for the first time. The README stays the single quickstart reference; the full option reference lives in the online AssemblyAI documentation.

What's changed

  • Correct the authentication docs. The service does not validate credentials, but it does require a non-empty Authorization header (any value passes; missing or empty returns 401). The README previously said the service "accepts all requests", which breaks for deployments whose proxy strips the header.
  • State the accepted audio formats. 16-bit PCM WAV (audio/wav) or raw S16LE PCM (audio/pcm); compressed formats (MP3, Opus, …) return 415. Previously the docs listed bit-depth/sample-rate constraints but never said which container formats are accepted.
  • List the optional config fields and note that unknown fields are silently ignored, with a warning to check spelling — a typo'd option does nothing rather than erroring in the current release. Full option details are in the AssemblyAI documentation.
  • Bundle sync/example/example_audio_file.wav and default transcribe_file.py to it, so the quickstart works with zero extra assets (the streaming stack already ships one; sync didn't).
  • Rewrite the example script's docstring for a customer audience.
  • Add a troubleshooting note that the deep_gemm AssertionError traceback during warmup is harmless (optional-kernel probe with fallback).

🤖 Generated with Claude Code

- Add sync/API.md — the request/response contract (config fields, error
  envelope, response shape) the README referenced but never shipped.
- Correct the auth wording: a non-empty Authorization header is required
  (any value accepted); missing/empty returns 401.
- State the accepted audio formats (16-bit PCM WAV or raw S16LE PCM);
  compressed formats return 415.
- Note that unknown config fields are silently ignored.
- Bundle example_audio_file.wav and make the example script default to it.
- Rewrite the example docstring for a customer audience.
- Add a troubleshooting note for the harmless deep_gemm warmup traceback.
@aurpsis-aai aurpsis-aai requested a review from bgotthold-aai July 6, 2026 13:51
The literal value in the curl -H 'Authorization: ...' examples pattern-matches
security scanners' hardcoded-credential rules. Since the self-hosted service
accepts any non-empty value, use 'any value works' — which also documents the
semantics inline.
@aurpsis-aai aurpsis-aai marked this pull request as ready for review July 6, 2026 14:22
Comment thread sync/API.md Outdated
@@ -0,0 +1,211 @@
# Sync API reference (self-hosted)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do you think we should provide this vs reference the docs?

The README carries the quickstart contract (auth, formats, constraints,
config field names) inline; the full option reference belongs in the
AssemblyAI documentation rather than a second copy maintained here.
@aurpsis-aai aurpsis-aai requested a review from bgotthold-aai July 6, 2026 21:11
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.

2 participants