Skip to content

Create room

Endpoint

POST /v3/room

To attend a room or get information about the room it needs to be created first. Pass the slug and title(optional) as an argument.

Parameters

Key Type Description
slug required (String) a valid room slug ("room-slug-example").
title optional (String) a valid room title ("title-example").

Returns

Returns the room object if a valid request was made, and returns an error otherwise. If the title field isn't passed as an argument, the room object is returned without it.

Bash
curl --location --request POST 'https://api.meedio.me/api/v3/room' \
--header 'API_KEY: meedio_key' \
--header 'API_SECRET: meedio_secret' \
--header 'Content-Type: application/json' \
--data '{
  "title": "title-example",
  "slug": "room-slug-example"
}'
Ruby
require "uri"
require "json"
require "net/http"

url = URI("https://api.meedio.me/api/v3/room")

http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Post.new(url)
request["API_KEY"] = 'meedio_key'
request["API_SECRET"] = 'meedio_secret'
request["Content-Type"] = "application/json"
request.body = "title=title-example&slug=room-slug-example"

response = http.request(request)
puts response.read_body
JavaScript
var axios = require("axios");
var qs = require("qs");
var data = qs.stringify({
  title: "title-example",
  slug: "room-slug-example",
});
var config = {
  method: "post",
  url: "https://api.meedio.me/api/v3/room",
  headers: {
    API_SECRET: "meedio_secret",
    API_KEY: "meedio_key",
    "Content-Type": "application/json",
  },
  data: data,
};

axios(config)
  .then(function (response) {
    console.log(JSON.stringify(response.data));
  })
  .catch(function (error) {
    console.log(error);
  });
Python
import requests

url = "https://api.meedio.me/api/v3/room"

payload='title=title-example&slug=room-slug-example'
headers = {
  'API_SECRET': 'meedio_secret',
  'API_KEY': 'meedio_key',
  'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
PHP
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://api.meedio.me/api/v3/room');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
$request->setHeader(array(
  'API_KEY' => 'meedio_key',
  'API_SECRET' => 'meedio_secret',
  'Content-Type' => 'application/json'
));
$request->setBody('{\n    "title": "title-example",\n    "slug": "room-slug-example",\n}');
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
Go
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.meedio.me/api/v3/room"
  method := "POST"

  payload := strings.NewReader(`{
    "title": "title-example",
    "slug": "room-slug-example"
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("API_KEY", "meedio_key")
  req.Header.Add("API_SECRET", "meedio_secret")
  req.Header.Add("Content-Type", "application/json")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}