From bb2f2362871f68223b6a3936644d99d5968ba953 Mon Sep 17 00:00:00 2001 From: chdeskur Date: Tue, 25 Mar 2025 22:05:38 -0400 Subject: [PATCH 01/74] add workflow --- .github/workflows/update-openapi.yml | 83 ++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 .github/workflows/update-openapi.yml diff --git a/.github/workflows/update-openapi.yml b/.github/workflows/update-openapi.yml new file mode 100644 index 000000000..b164b545d --- /dev/null +++ b/.github/workflows/update-openapi.yml @@ -0,0 +1,83 @@ +name: Update OpenAPI Specification + +on: + workflow_dispatch: +jobs: + update-openapi: + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Fetch OpenAPI specification + run: | + curl -s https://api.vapi.ai/api-json > temp-openapi.json + + - name: Verify JSON validity + run: | + cat temp-openapi.json | jq . > /dev/null + if [ $? -ne 0 ]; then + echo "Error: Invalid JSON received from API endpoint" + exit 1 + fi + mv temp-openapi.json ./fern/apis/api/openapi.json + + - name: Check for changes + id: check_changes + run: | + if git diff --quiet ./fern/apis/api/openapi.json; then + echo "No changes detected in OpenAPI specification" + echo "changes_detected=false" >> $GITHUB_OUTPUT + else + echo "Changes detected in OpenAPI specification" + echo "changes_detected=true" >> $GITHUB_OUTPUT + fi + + - name: Setup GitHub CLI + id: setup_cli + if: steps.check_changes.outputs.changes_detected == 'true' + run: | + # Create timestamp for unique branch name + TIMESTAMP=$(date +%Y%m%d%H%M%S) + BRANCH_NAME="update-openapi-spec-${TIMESTAMP}" + + # Setup branch for changes + git config --global user.name "GitHub Actions" + git config --global user.email "actions@github.com" + + # Create new branch with timestamp + git checkout -b $BRANCH_NAME + git add ./fern/apis/api/openapi.json + git commit -m "chore: update OpenAPI specification" + git push -u origin $BRANCH_NAME + + # Store branch name for PR creation + echo "branch_name=$BRANCH_NAME" >> $GITHUB_OUTPUT + + - name: Create Pull Request with GitHub CLI + if: steps.check_changes.outputs.changes_detected == 'true' + run: | + gh pr create \ + --base main \ + --head ${{ steps.setup_cli.outputs.branch_name }} \ + --title "Update OpenAPI Specification" \ + --body "This PR updates the OpenAPI specification from the official Vapi API endpoint. + + - Auto-generated by the Update OpenAPI Specification workflow + - Source: https://api.vapi.ai/api-json + - Generated at: $(date -u +'%Y-%m-%dT%H:%M:%SZ')" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: PR Result + if: steps.check_changes.outputs.changes_detected == 'true' + run: | + echo "Pull request created successfully!" + + - name: No Changes Result + if: steps.check_changes.outputs.changes_detected == 'false' + run: | + echo "No changes detected in OpenAPI specification. No PR created." \ No newline at end of file From eb79a1939445edc280e899b030dcc7b829c39692 Mon Sep 17 00:00:00 2001 From: avb-dev-docs <123575048+avb-dev-docs@users.noreply.github.com> Date: Fri, 18 Apr 2025 11:59:06 -0700 Subject: [PATCH 02/74] Update dev-docs.json --- dev-docs.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dev-docs.json b/dev-docs.json index ad795ee99..4c9813956 100644 --- a/dev-docs.json +++ b/dev-docs.json @@ -4,6 +4,7 @@ "userDocsWorkflows": [ "generateUserDocs" ], - "issues": true + "issues": true, + "connectedOrg": "vapi-poc" } -} \ No newline at end of file +} From f64d884f6b3cb4e2687f5d4027eca6ff0861ab49 Mon Sep 17 00:00:00 2001 From: "dev-docs-github-app-dev[bot]" <178211755+dev-docs-github-app-dev[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 18:59:35 +0000 Subject: [PATCH 03/74] Create file --- llmText.json | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 llmText.json diff --git a/llmText.json b/llmText.json new file mode 100644 index 000000000..0c3f1899c --- /dev/null +++ b/llmText.json @@ -0,0 +1,3 @@ +{ + "llmTxtFile": "static/llm.txt" +} \ No newline at end of file From 82a7017b733248c5f032588fcb39d1ba9174a452 Mon Sep 17 00:00:00 2001 From: "dev-docs-github-app-dev[bot]" <178211755+dev-docs-github-app-dev[bot]@users.noreply.github.com> Date: Fri, 18 Apr 2025 18:59:37 +0000 Subject: [PATCH 04/74] Create file --- static/llm.txt | 19044 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 19044 insertions(+) create mode 100644 static/llm.txt diff --git a/static/llm.txt b/static/llm.txt new file mode 100644 index 000000000..1e3098f3d --- /dev/null +++ b/static/llm.txt @@ -0,0 +1,19044 @@ +Below is all the contents of our docs: + + + + This is the content for the doc README.md + + # Vapi Platform Documentation + +This repository contains the source files for the documentation found at [docs.vapi.ai](https://docs.vapi.ai/). + +Get started with Vapi here: [docs.vapi.ai/introduction](https://docs.vapi.ai/introduction) + +View the API Reference here: [docs.vapi.ai/api-reference](https://docs.vapi.ai/api-reference/) + +Explore our Client and Server SDKs here: [docs.vapi.ai/sdks](https://docs.vapi.ai/sdks) + +| Vapi Developer Ecosystem | | +|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **Real-time SDKs** | [Web](https://github.com/VapiAI/web) · [Flutter](https://github.com/VapiAI/flutter) · [React Native](https://github.com/VapiAI/react-native-sdk) · [iOS](https://github.com/VapiAI/ios) · [Python](https://github.com/VapiAI/python) · [Vanilla](https://github.com/VapiAI/html-script-tag) | +| **Client Examples** | [Next.js](https://github.com/VapiAI/client-side-example-javascript-next) · [React](https://github.com/VapiAI/client-side-example-javascript-react) · [Flutter](https://github.com/VapiAI/flutter/tree/main/example) · [React Native](https://github.com/VapiAI/client-side-example-react-native) | +| **Server Examples** | [Vercel](https://github.com/VapiAI/server-side-example-serverless-vercel) · [Cloudflare](https://github.com/VapiAI/server-side-example-serverless-cloudflare) · [Supabase](https://github.com/VapiAI/server-side-example-serverless-supabase) · [Node](https://github.com/VapiAI/server-side-example-javascript-node) · [Bun](https://github.com/VapiAI/server-side-example-javascript-bun) · [Deno](https://github.com/VapiAI/server-side-example-javascript-deno) · [Flask](https://github.com/VapiAI/server-side-example-python-flask) · [Laravel](https://github.com/VapiAI/server-side-example-php-laravel) · [Go](https://github.com/VapiAI/server-side-example-go-gin) · [Rust](https://github.com/VapiAI/server-side-example-rust-actix) | +| **Resources** | [Official Docs](https://docs.vapi.ai/) · [API Reference](https://api.vapi.ai/api) | +| **Community** | [Videos](/community/videos) · [UI Library](https://www.vapiblocks.com/) | + +## How can I contribute to these docs? + +You can suggest edits by making a pull request. + +## How to update documentation? + +### Local Development server + +To run a local development server with hot-reloading you can run the following command + +```sh +fern docs dev +``` + +#### Hosted URL + +To update your documentation on a hosted URL, run +``` +# npm install -g fern-api +fern generate --docs +``` +To preview your documentation, run +``` +# npm install -g fern-api +fern generate --docs --preview +``` +The repository contains GitHub workflows that will automatically run these commands for you. For example, when you make a PR a preview link will be auto-generated and when you merge to main the docs site will update. + + + This is the content for the doc advanced.md + + # Vapi Api Configuration + +This repository contains our Fern Configuration: + +- [OpenAPI spec](./openapi.json) +- [OpenAPI Overrides](./openapi-overrides.yml) +- [SDK generator config](./fern/generators.yml) + +## Setup + +```sh +npm install -g fern-api +``` + +## Validating your OpenAPI Specs + +To validate your API, run: + +```sh +fern check +``` + +## Managing SDKs + +### Deploying your SDKs + +To deploy your SDKs, simply run the `Release Python SDK` GitHub Action with the +desired version for the release. Under the hood, this leverages the Fern CLI: + +```sh +fern generate --api api --group python-sdk +``` + +### Developing SDKs + +You can also regenerate the SDKs locally by running: + +```sh +fern generate --api api --group python-sdk --preview --log-level debug +``` + +This will generate the SDK and download it to a local folder that can be pip installed. + +```sh +pip install -e /fern/.preview/fern-python-sdk +``` + +## How to update documentation? + +### Local Development server + +To run a local development server with hot-reloading you can run the following command + +```sh +fern docs dev +``` + +#### Hosted URL + +To update your documentation on a hosted URL, run +``` +# npm install -g fern-api +fern generate --docs +``` +To preview your documentation, run +``` +# npm install -g fern-api +fern generate --docs --preview +``` +The repository contains GitHub workflows that will automatically run these commands for you. For example, when you make a PR a preview link will be auto-generated and when you merge to main the docs site will update. + + + This is the content for the doc fern/GHL.mdx + + --- +title: How to Connect Vapi with Make & GHL +slug: tools/GHL +--- + + +Vapi's GHL/Make Tools integration allows you to directly import your GHL workflows and Make scenarios into Vapi as Tools. This enables you to create voicebots that can trigger your favorite app integrations and automate complex workflows using voice commands. + +## What are GHL/Make Tools? + +GHL (GoHighLevel) workflows and Make scenarios are powerful automation tools that allow you to connect and integrate various apps and services. With the GHL/Make Tools integration, you can now bring these automations into Vapi and trigger them using voice commands. + +## How does the integration work? + +1. **Import workflows and scenarios**: Navigate to the [Tools section](https://dashboard.vapi.ai/tools) in your Vapi dashboard and import your existing GHL workflows and Make scenarios. + +2. **Add Tools to your assistants**: Once imported, you can add these Tools to your AI assistants, enabling them to trigger the automations based on voice commands. + +3. **Trigger automations with voice**: Your AI assistants can now understand voice commands and execute the corresponding GHL workflows or Make scenarios, allowing for seamless voice-enabled automation. + +## Setting up the GHL/Make Tools integration + +1. **Create a GHL workflow or Make scenario**: Design your automation in GHL or Make, connecting the necessary apps and services. + +2. **Import the workflow/scenario into Vapi**: In the Vapi dashboard, navigate to the Tools section and click on "Import." Select the GHL workflow or Make scenario you want to import. + +3. **Configure the Tool**: Provide a name and description for the imported Tool, and map any required input variables to the corresponding Vapi entities (e.g., extracted from user speech). + +4. **Add the Tool to your assistant**: Edit your AI assistant and add the newly imported Tool to its capabilities. Specify the voice commands that should trigger the Tool. + +5. **Test the integration**: Engage with your AI assistant using the specified voice commands and verify that the corresponding GHL workflow or Make scenario is triggered successfully. + +## Use case examples + +### Booking appointments with AI callers + +- Import a GHL workflow that handles appointment booking +- Configure the workflow to accept appointment details (date, time, user info) from Vapi +- Add the Tool to your AI assistant, allowing it to book appointments based on voice commands + +### Updating CRMs with voice-gathered data + +- Import a Make scenario that updates your CRM with customer information +- Map the scenario's input variables to entities extracted from user speech +- Enable your AI assistant to gather customer information via voice and automatically update your CRM + +### Real Estate: Automated Property Information Retrieval + +- Import a Make scenario that retrieves property information from your MLS (Multiple Listing Service) or real estate database +- Configure the scenario to accept a property address or MLS ID as input +- Add the Tool to your AI assistant, allowing potential buyers to request property details using voice commands +- Your AI assistant can then provide key information about the property, such as price, square footage, number of bedrooms/bathrooms, and amenities + +### Healthcare/Telehealth: Appointment Reminders and Prescription Refills + +- Import a GHL workflow that sends appointment reminders and handles prescription refill requests +- Configure the workflow to accept patient information and appointment/prescription details from Vapi +- Add the Tool to your AI assistant, enabling patients to request appointment reminders or prescription refills using voice commands +- Your AI assistant can confirm the appointment details, send reminders via SMS or email, and forward prescription refill requests to the appropriate healthcare provider + +### Restaurant Ordering: Custom Order Placement and Delivery Tracking + +- Import a Make scenario that integrates with your restaurant's online ordering system and delivery tracking platform +- Configure the scenario to accept customer information, order details, and delivery preferences from Vapi +- Add the Tool to your AI assistant, allowing customers to place custom orders and track their delivery status using voice commands +- Your AI assistant can guide customers through the ordering process, suggest menu items based on preferences, and provide real-time updates on the order status and estimated delivery time + +## Best practices + +- Break down complex automations into smaller, focused workflows or scenarios for better maintainability +- Use clear and concise naming conventions for your imported Tools and their input variables +- Thoroughly test the integration to ensure reliable performance and accurate data passing +- Keep your GHL workflows and Make scenarios up to date to reflect any changes in the connected apps or services + +## Troubleshooting + +- If a Tool is not triggering as expected, verify that the voice commands are correctly configured and the input variables are properly mapped +- Check the Vapi logs and the GHL/Make execution logs to identify any errors or issues in the automation flow +- Ensure that the necessary API credentials and permissions are correctly set up in both Vapi and the integrated apps/services + +By leveraging Vapi's GHL/Make Tools integration, you can create powerful voice-enabled automations and streamline your workflows, all without extensive coding. Automate tasks, connect your favorite apps, and unlock the full potential of voice AI with Vapi. + +## Get Support + +Join our Discord to connect with other developers & connect with our team: + + + + Connect with our team & other developers using Vapi. + + + Send our support team an email. + + + +Here are some video tutorials that will guide you on how to use Vapi with services like Make and GoHighLevel: + +
+