# Join Meeting API

**URL:** <https://devforum.zoom.us/t/join-meeting-api/47243>\
**Category:** API and Webhooks\
**Created:** [April 5, 2021, 8:56am UTC](https://devforum.zoom.us/t/join-meeting-api/47243 "2021-04-05T08:56:52Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![will.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/will.zoom/32/14417_2.png) [@will.zoom](https://devforum.zoom.us/u/will.zoom)\
**Post date:** [April 5, 2021, 3:16pm UTC](https://devforum.zoom.us/t/join-meeting-api/47243/2 "2021-04-05T15:16:25Z")

</div>

Hi @mkhurramilyas,

This should definitely be possible. You can send requests to our Create Meeting and GET Meeting APIs from a PHP framework. These endpoints will return a start\_url and join\_url for the host and participants to start/join Zoom Meetings:

> **[Create a meeting - Meetings - Zoom API - API Reference](https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingcreate)**
>
> Create a meeting for a user. This API has a daily rate limit of 100 requests per day. Therefore, only 100 Create a Meeting API requests are permitted wi...

> **[Get a meeting - Meetings - Zoom API - API Reference](https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meeting)**
>
> Retrieve the details of a meeting.
> Scopes: meeting:read:admin meeting:read
> 
> Rate Limit Label: Light
> 
> Authorization
> 
> Flow: authorizationCode
> 
> Authorizat...

Here is an example of a request to create a meeting in PHP:

```auto
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.zoom.us/v2/users/%7BuserId%7D/meetings",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\"topic\":\"string\",\"type\":\"integer\",\"start_time\":\"string [date-time]\",\"duration\":\"integer\",\"schedule_for\":\"string\",\"timezone\":\"string\",\"password\":\"string\",\"agenda\":\"string\",\"recurrence\":{\"type\":\"integer\",\"repeat_interval\":\"integer\",\"weekly_days\":\"string\",\"monthly_day\":\"integer\",\"monthly_week\":\"integer\",\"monthly_week_day\":\"integer\",\"end_times\":\"integer\",\"end_date_time\":\"string [date-time]\"},\"settings\":{\"host_video\":\"boolean\",\"participant_video\":\"boolean\",\"cn_meeting\":\"boolean\",\"in_meeting\":\"boolean\",\"join_before_host\":\"boolean\",\"mute_upon_entry\":\"boolean\",\"watermark\":\"boolean\",\"use_pmi\":\"boolean\",\"approval_type\":\"integer\",\"registration_type\":\"integer\",\"audio\":\"string\",\"auto_recording\":\"string\",\"enforce_login\":\"boolean\",\"enforce_login_domains\":\"string\",\"alternative_hosts\":\"string\",\"global_dial_in_countries\":[\"string\"],\"registrants_email_notification\":\"boolean\"}}",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer {token}",
    "content-type: application/json"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

```

Regarding user access, users can join via the join\_url as guests (not required to enter email/login), as long as your meetings settings don’t require authentication.

I hope this helps!  
Will

---

_[View the full topic](https://devforum.zoom.us/t/join-meeting-api/47243)._
