Meeting SDK error 3712 Invalid Signature - attempted with hours of testing and different scenarios

Hi @Christopher, welcome to the community.

To clarify:

Make sure you’ve created a General app (Meeting SDK) in the Zoom Marketplace — not an OAuth, Server-to-Server OAuth, or JWT app. Only the General app gives you the correct Client ID and Client Secret required to generate a valid signature.

Follow the previous topic here for proper steps to get your credentials and generate a signature:
How to properly get Client ID/Secret and generate Meeting SDK signature (Not able to find my SDK Key - #3 by freelancer.nak)

If you’re using Node.js, here’s a working signature generator using jsrsasign:

const KJUR = require('jsrsasign');

function generateSignature({ meeting, admin }) {
    const iat = Math.round(new Date().getTime() / 1000) - 30;
    const exp = iat + 60 * 60 * 2;

    const oHeader = {
        alg: 'HS256',
        typ: 'JWT'
    };

    const oPayload = {
        sdkKey: process.env.ZOOM_CLIENT_ID,
        mn: meeting.id,
        role: admin ? 1 : 0,
        iat: iat,
        exp: exp,
        appKey: process.env.ZOOM_CLIENT_ID,
        tokenExp: iat + 60 * 60 * (process.env.MEETING_DURATION_IN_HOURS || 3)
    };

    const sHeader = JSON.stringify(oHeader);
    const sPayload = JSON.stringify(oPayload);
    const signature = KJUR.jws.JWS.sign('HS256', sHeader, sPayload, process.env.ZOOM_CLIENT_SECRET);

    return signature;
}

module.exports = {
    generateSignature
};

Let us know if you want help reviewing your setup. You’re close — just make sure the app type and credentials are correct.