Phone by Voyp

Phone by Voyp · Actions GPT

Make voice call

Starts a voice call with the given context of the call

  • POST /api/openai/call/startStartCall

    Start voice call. The AI Assistant will interact with the caller on behalf of the user. The method will return a URL where the call can be tracked

  • POST /api/openai/call/cancelCancelCall

    Cancel / hangup voice call.

  • POST /api/call/details/{id}CallDetails

    Retrieve call details and transcription

  • POST /api/openai/place/{number}PlaceDetails

    Retrieve places details by number

  • GET /api/openai/places/searchPlacesSearch

    Search Places in a given location

  • GET /api/openai/place/searchPlaceSearch

    Search Place in a given location nad retrieve details

  • GET /api/profileGetUserProfile

    Retrieve user profile

Schéma original API
{
  "openapi": "3.1.0",
  "info": {
    "title": "Make voice call",
    "description": "Starts a voice call with the given context of the call",
    "version": "v1.0.0"
  },
  "servers": [
    {
      "url": "https://api.voyp.app"
    }
  ],
  "paths": {
    "/api/openai/call/start": {
      "post": {
        "operationId": "StartCall",
        "description": "Start voice call. The AI Assistant will interact with the caller on behalf of the user. The method will return a URL where the call can be tracked",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "number": {
                    "type": "string",
                    "description": "The number to call in E164 format"
                  },
                  "record": {
                    "type": "boolean",
                    "description": "enable or disable call recording"
                  },
                  "language": {
                    "type": "string",
                    "description": "Language code to use when making the call. Example: en-US, pt-BR, fr-FR"
                  },
                  "context": {
                    "type": "string",
                    "description": "The detailed context of the call. The AI Assistant will use these instructions to navigate the conversation with the person on the other side of the call"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "URL where the call can be tracked"
                    },
                    "id": {
                      "type": "string",
                      "description": "id of the new call"
                    },
                    "error": {
                      "type": "string",
                      "description": "Error description if something fails"
                    },
                    "success": {
                      "type": "string",
                      "description": "true/false if call is successfully started or failed"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          },
          "500": {
            "description": "Internal Error"
          }
        }
      }
    },
    "/api/openai/call/cancel": {
      "post": {
        "operationId": "CancelCall",
        "description": "Cancel / hangup voice call.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "Id of the call to cancel/hangup"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Call canceled successfully"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    },
    "/api/call/details/{id}": {
      "post": {
        "operationId": "CallDetails",
        "description": "Retrieve call details and transcription",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the call to retrieve details and transcription",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Call details retrieved successfully"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    },
    "/api/openai/place/{number}": {
      "post": {
        "operationId": "PlaceDetails",
        "description": "Retrieve places details by number",
        "parameters": [
          {
            "name": "number",
            "in": "path",
            "required": true,
            "description": "The number of the place to search in E164 format",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Place details retrieved successfully"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    },
    "/api/openai/places/search": {
      "get": {
        "operationId": "PlacesSearch",
        "description": "Search Places in a given location",
        "parameters": [
          {
            "name": "search",
            "in": "query",
            "required": true,
            "description": "Search query to find places. Ex. \"italian restaurants in New York\"",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Places search success"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    },
    "/api/openai/place/search": {
      "get": {
        "operationId": "PlaceSearch",
        "description": "Search Place in a given location nad retrieve details",
        "parameters": [
          {
            "name": "place",
            "in": "query",
            "required": true,
            "description": "Name of place to search. Ex. \"restaurant Becco\"",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "location",
            "in": "query",
            "required": true,
            "description": "Location of place to search. Ex. San Francisco, CA",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Place search success"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    },
    "/api/profile": {
      "get": {
        "operationId": "GetUserProfile",
        "description": "Retrieve user profile",
        "responses": {
          "200": {
            "description": "User Profile retrieved"
          },
          "400": {
            "description": "Invalid request"
          },
          "401": {
            "description": "Authentication failed, requires new authentication"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {}
  }
}