diff --git a/.github/workflows/docs-openapi-drift.yml b/.github/workflows/docs-openapi-drift.yml new file mode 100644 index 0000000..40387b7 --- /dev/null +++ b/.github/workflows/docs-openapi-drift.yml @@ -0,0 +1,56 @@ +name: Docs OpenAPI drift check + +on: + pull_request: + branches: [main] + paths: + - 'api/**' + - 'pipecat/**' + - 'scripts/dump_docs_openapi.py' + - 'docs/api-reference/openapi.json' + - '.github/workflows/docs-openapi-drift.yml' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + drift-check: + runs-on: ubuntu-latest + timeout-minutes: 25 + steps: + - name: Checkout repo (with pipecat submodule) + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Set up Python 3.12 + uses: actions/setup-python@v5 + with: + python-version: '3.12' + cache: pip + cache-dependency-path: | + api/requirements.txt + pipecat/pyproject.toml + + - name: Install api dependencies + run: | + pip install -r api/requirements.txt + pip install './pipecat[cartesia,deepgram,openai,elevenlabs,groq,google,azure,sarvam,soundfile,silero,webrtc,speechmatics,openrouter,camb]' + + - name: Dump OpenAPI spec + env: + DATABASE_URL: postgresql+asyncpg://dummy:dummy@localhost/dummy + REDIS_URL: redis://localhost:6379/0 + ENABLE_AWS_S3: "false" + DEPLOYMENT_MODE: oss + run: python -u -m scripts.dump_docs_openapi + + - name: Check for drift + run: | + if ! git diff --exit-code docs/api-reference/openapi.json; then + echo "::error::docs/api-reference/openapi.json is out of sync with the FastAPI app." + echo "Run 'python -m scripts.dump_docs_openapi' locally (with api/.env sourced) and commit the result." + exit 1 + fi + echo "OpenAPI spec is in sync." diff --git a/docs/docs.json b/docs/docs.json index cbefd02..5439c02 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -104,6 +104,7 @@ "integrations/telephony/vobiz", "integrations/telephony/asterisk-ari", "integrations/telephony/webhooks", + "integrations/telephony/agent-stream", "integrations/telephony/custom" ] }, @@ -222,6 +223,30 @@ "api-reference/campaigns/progress", "api-reference/campaigns/runs" ] + }, + { + "group": "Telephony Configurations", + "pages": [ + "api-reference/telephony-configs", + "api-reference/telephony-configs/providers", + "api-reference/telephony-configs/list", + "api-reference/telephony-configs/create", + "api-reference/telephony-configs/get", + "api-reference/telephony-configs/update", + "api-reference/telephony-configs/delete", + "api-reference/telephony-configs/set-default-outbound", + { + "group": "Phone Numbers", + "pages": [ + "api-reference/telephony-configs/phone-numbers/list", + "api-reference/telephony-configs/phone-numbers/create", + "api-reference/telephony-configs/phone-numbers/get", + "api-reference/telephony-configs/phone-numbers/update", + "api-reference/telephony-configs/phone-numbers/delete", + "api-reference/telephony-configs/phone-numbers/set-default-caller" + ] + } + ] } ] },