Transkriptor Meeting Bot (Zoom, Google Meet, Microsoft Teams)

🤖 Transkriptor Meeting Bot Integration

Quickly set up the Transkriptor Meeting Bot for seamless transcription in your online meetings. Provide the meeting URL and language code, and invite the bot to your Zoom, Microsoft Teams, or Google Meet session. Once the meeting concludes, your transcription will be automatically generated.

To integrate the Transkriptor Meeting Bot into your meetings, follow this sample code:

import json
import requests

# Replace with your API key
api_key = "your_api_key"

# Set up the headers, including the API key
headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {api_key}",
    "Accept": "application/json",
}


# The URL of your meeting and language is required
payload = {
    "meeting_url": "your_meeting_url",
    "language": "en-US",
}

# Define the API endpoint
url = f"https://api.tor.app/developer/meetings/bot"

response = requests.post(url, json=payload, headers=headers)

content = json.loads(response.content)
print(content)

const axios = require('axios');

const apiKey = 'your_api_key';

const headers = {
    'Content-Type': 'application/json',
    'Authorization': `Bearer ${apiKey}`,
    'Accept': 'application/json'
};

const payload = {
    meeting_url: "your_meeting_url",
    language: "en-US"
};

const url = "https://api.tor.app/developer/meetings/bot";

axios.post(url, payload, { headers })
    .then(response => {
        console.log(response.data);
    })
    .catch(error => {
        console.error("Error:", error.response ? error.response.data : error.message);
    });


import okhttp3.*;
import org.json.JSONObject;

public class PostMeetingBot {
    private static final String API_KEY = "your_api_key";

    public static void main(String[] args) throws Exception {
        OkHttpClient client = new OkHttpClient();
        String url = "https://api.tor.app/developer/meetings/bot";

        JSONObject payload = new JSONObject();
        payload.put("meeting_url", "your_meeting_url");
        payload.put("language", "en-US");

        RequestBody body = RequestBody.create(payload.toString(), MediaType.parse("application/json"));

        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .addHeader("Authorization", "Bearer " + API_KEY)
                .addHeader("Content-Type", "application/json")
                .addHeader("Accept", "application/json")
                .build();

        try (Response response = client.newCall(request).execute()) {
            if (response.isSuccessful()) {
                JSONObject responseData = new JSONObject(response.body().string());
                System.out.println(responseData.toString(2));
            } else {
                System.out.println("Request failed: " + response.code());
                System.out.println("Response Body: " + response.body().string());
            }
        }
    }
}


using System;
using System.Net.Http;
using System.Text;
using System.Text.Json;
using System.Threading.Tasks;

public class Program
{
    private static readonly string apiKey = "your_api_key";

    public static async Task Main()
    {
        var client = new HttpClient();
        var url = "https://api.tor.app/developer/meetings/bot";

        var payload = new
        {
            meeting_url = "your_meeting_url",
            language = "en-US"
        };

        var jsonPayload = new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json");

        client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}");
        client.DefaultRequestHeaders.Add("Accept", "application/json");

        var response = await client.PostAsync(url, jsonPayload);

        if (response.IsSuccessStatusCode)
        {
            var responseData = await response.Content.ReadAsStringAsync();
            Console.WriteLine(responseData);
        }
        else
        {
            Console.WriteLine("Request failed with status: " + response.StatusCode);
            Console.WriteLine("Response Body: " + await response.Content.ReadAsStringAsync());
        }
    }
}


package main

import (
	"bytes"
	"encoding/json"
	"fmt"
	"net/http"
)

const apiKey = "your_api_key"

func main() {
	url := "https://api.tor.app/developer/meetings/bot"
	payload := map[string]string{
		"meeting_url": "your_meeting_url",
		"language":    "en-US",
	}

	payloadBytes, _ := json.Marshal(payload)
	req, _ := http.NewRequest("POST", url, bytes.NewBuffer(payloadBytes))
	req.Header.Set("Authorization", "Bearer "+apiKey)
	req.Header.Set("Content-Type", "application/json")
	req.Header.Set("Accept", "application/json")

	client := &http.Client{}
	resp, err := client.Do(req)
	if err != nil {
		fmt.Println("Error:", err)
		return
	}
	defer resp.Body.Close()

	var response map[string]interface{}
	if err := json.NewDecoder(resp.Body).Decode(&response); err != nil {
		fmt.Println("Error decoding response:", err)
		return
	}
	fmt.Println(response)
}


require 'net/http'
require 'json'
require 'uri'

api_key = "your_api_key"

url = URI("https://api.tor.app/developer/meetings/bot")
payload = {
    "meeting_url" => "your_meeting_url",
    "language" => "en-US"
}

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer #{api_key}"
request["Content-Type"] = "application/json"
request["Accept"] = "application/json"
request.body = payload.to_json

response = http.request(request)
puts JSON.parse(response.body)


<?php
$apiKey = "your_api_key";

$url = "https://api.tor.app/developer/meetings/bot";
$payload = json_encode([
    "meeting_url" => "your_meeting_url",
    "language" => "en-US"
]);

$headers = [
    "Authorization: Bearer $apiKey",
    "Content-Type: application/json",
    "Accept: application/json"
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
?>


import okhttp3.*
import org.json.JSONObject

fun main() {
    val apiKey = "your_api_key"
    val url = "https://api.tor.app/developer/meetings/bot"

    val payload = JSONObject()
    payload.put("meeting_url", "your_meeting_url")
    payload.put("language", "en-US")

    val client = OkHttpClient()
    val body = RequestBody.create(MediaType.parse("application/json"), payload.toString())
    val request = Request.Builder()
        .url(url)
        .post(body)
        .addHeader("Authorization", "Bearer $apiKey")
        .addHeader("Content-Type", "application/json")
        .addHeader("Accept", "application/json")
        .build()

    client.newCall(request).execute().use { response ->
        println(response.body()?.string())
    }
}


import Foundation

let apiKey = "your_api_key"

let url = URL(string: "https://api.tor.app/developer/meetings/bot")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.addValue("Bearer \(apiKey)", forHTTPHeaderField: "Authorization")
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("application/json", forHTTPHeaderField: "Accept")

let payload: [String: Any] = [
    "meeting_url": "your_meeting_url",
    "language": "en-US"
]

request.httpBody = try! JSONSerialization.data(withJSONObject: payload, options: [])

let task = URLSession.shared.dataTask(with: request) { data, response, error in
    if let data = data {
        let jsonResponse = try? JSONSerialization.jsonObject(with: data, options: [])
        print(jsonResponse ?? "Failed to parse response")
    }
}

task.resume()

import 'dart:convert';
import 'dart:io';

void main() async {
  const apiKey = 'your_api_key';

  final url = Uri.parse('https://api.tor.app/developer/meetings/bot');
  final payload = jsonEncode({
    "meeting_url": "your_meeting_url",
    "language": "en-US"
  });

  final request = await HttpClient().postUrl(url)
    ..headers.set('Authorization', 'Bearer $apiKey')
    ..headers.set('Content-Type', 'application/json')
    ..headers.set('Accept', 'application/json')
    ..write(payload);

  final response = await request.close();

  if (response.statusCode == 200) {
    final responseBody = await response.transform(utf8.decoder).join();
    final responseData = jsonDecode(responseBody);
    print(responseData);
  } else {
    print("Request failed with status: ${response.statusCode}");
    final responseBody = await response.transform(utf8.decoder).join();
    print("Response Body: $responseBody");
  }
}