# \[LARAVEL\] \[API\] Join Meeting Issue

**URL:** <https://devforum.zoom.us/t/laravel-api-join-meeting-issue/91621>\
**Category:** Meetings\
**Tags:** api, video-sdk\
**Created:** [July 11, 2023, 2:29pm UTC](https://devforum.zoom.us/t/laravel-api-join-meeting-issue/91621 "2023-07-11T14:29:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![aboodealtikrity1](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/aboodealtikrity1/32/50160_2.png) [@aboodealtikrity1](https://devforum.zoom.us/u/aboodealtikrity1)\
**Post date:** [July 11, 2023, 2:29pm UTC](https://devforum.zoom.us/t/laravel-api-join-meeting-issue/91621/1 "2023-07-11T14:29:40Z")

</div>

Hello Devs,  
I’m developing a website for online courses ( Local System ) using  
Laravel,  
Vuejs  
I’m getting an issue Failed to join the meeting or sometimes Meeting Passcode Wrong  
the code below :

```auto
<template>
    <Head :title="usePage().props.head" />

    <Dashboard>
        <template #Main>
            {{ usePage().props.meeting_data }}
            <div id="meetingSDKElement" class="h-[500px] w-[500px]">
                <!-- Zoom Meeting SDK Component View Rendered Here -->
            </div>
        </template>
    </Dashboard>
</template>

<script setup>
import { onMounted } from 'vue'
import { usePage, useForm, Link } from '@inertiajs/vue3'
import ZoomMtgEmbedded from '@zoomus/websdk/embedded';
import KJUR from 'jsrsasign';

let client = ZoomMtgEmbedded.createClient();
const oHeader = { alg: 'HS256', typ: 'JWT' } <-- I have tried to change it to "OAuth" - "JWT" - "jwt" 

const iat = Math.round(new Date().getTime() / 1000) - 30;
const exp = iat + 60 * 60 * 2
const oPayload = {
    sdkKey: usePage().props.SDKKey, <<--- Client ID
    mn: '1',
    role: 0,
    iat: iat,
    exp: exp,
    appKey: usePage().props.SDKKey,
    tokenExp: iat + 60 * 60 * 2
}

const sHeader = JSON.stringify(oHeader)
const sPayload = JSON.stringify(oPayload)
onMounted(() => {
    const sJWT = KJUR.jws.JWS.sign('HS256', sHeader, sPayload, "ctdH2nMyFJLGeZzfKTndBFesFFeEhJyWNH75hvX")
    startMeeting(sJWT)
})
function startMeeting(signature) {

    let meetingSDKElement = document.getElementById('meetingSDKElement');

    client.init({ zoomAppRoot: meetingSDKElement, language: 'en-US' })

    client.join({
        sdkKey: usePage().props.SDKKey, < -- Client ID
        signature: signature,
        meetingNumber: '1',
        password: usePage().props.meeting_data.pwd,
        userName: usePage().props.meeting_data.host_name,

        success: (success) => {
            console.log(success)
        },
        error: (error) => {
            console.log(error)
        }
    })
}
</script>

```

---

<div class="post-metadata">

**Author:** ![AaronH](https://avatars.discourse-cdn.com/v4/letter/a/898d66/32.png) [@AaronH](https://devforum.zoom.us/u/AaronH)\
**Post date:** [April 5, 2024, 5:48am UTC](https://devforum.zoom.us/t/laravel-api-join-meeting-issue/91621/2 "2024-04-05T05:48:21Z")

</div>

Did you ever work this out?
