3Speak - Creator Studio - APIs explained along with example usage

Words
266
Reading
2 min
4y
Listen to this post
~2 min


Hello Community Members,

This is an unofficial update from sagarkothari88@sagarkothari88 about 3Speak.
Official updates will be provided by threespeak@threespeak 's handle.

thumbnail

Supporting PostingKey based user sessions

Step 1 - Add Necessary dependencies

import React, { useState } from "react";

import axios from "axios";
import { wrapper } from "axios-cookiejar-support";
import { CookieJar } from "tough-cookie";

import hive from "@hiveio/hive-js";

axios.defaults.headers.post["Access-Control-Allow-Origin"] = "*";
const jar = new CookieJar();
const client = wrapper(axios.create({ jar }));

const studioEndPoint = "https://studio.3speak.tv";

Step 2 - Get Encoded JWT Access Token

  • In the following logMe() function, you can see that, I've just logged the decrypted access-token.
async function logMe() {
try {
  let response = await client.get(
    `${studioEndPoint}/mobile/login?username=${username}`,
    {
      withCredentials: false,
      headers: {
        "Content-Type": "application/json",
      },
    }
  );
  console.log(`Response: ${JSON.stringify(response)}`);
  const memo = response.data.memo;
  console.log(`Memo - ${response.data.memo}`);
  let access_token = hive.memo.decode(postingKey, memo);
  access_token = access_token.replace("#", "");
  console.log(`Decrypted ${access_token}\n\n`);
} catch (err) {
  console.log(err);
  throw err;
}
}

Step 3 - Get All Videos

async function getAllVideoStatuses(access_token) {
try {
  let response = await client.get(
    `${studioEndPoint}/mobile/api/my-videos`,
    {
      withCredentials: false,
      headers: {
        "Content-Type": "application/json",
        "Authorization": `Bearer ${access_token}`
      },
    }
  );
  return response.data;
} catch (err) {
  console.log(err);
  throw err;
}
}

That's it.

  • Yes. It is as simple as this.
  • Get JWT Token, Decrypt it & use it to get videos of a user.

What are you waiting for?

  • You can go ahead & implement it in your DApp

Important Notes

  • 3Speak is also working on a complete re-write backend.
  • In future, we may have different APIs
  • These APIs may get deprected in near future.

Feedback / Info

  • Do you want more Info? Please let me know via comment section.
  • Do you have feedback to share? Please use comment section

Support Me

Please 馃檹Support Me
Donate Hive Or HBD Vote me as Hive Witness

Other Communities

I recommend joining these communities on Hive & Discord.

alt

alt
Click on the banner to join


alt

Click on the banner to join


alt


Important 3Speak Links

3Speak.tv3Speak Twitter3Speak Hive3Speak Telegram
3Speak in SpanishDownload Android AppDownload iOS AppDownload Desktop App
Join 3Speak DiscordSetup Encoder NodeVote for 3Speak ProposalVote 3Speak as Witness

Cheers
Have a good one


鈻讹笍 3Speak

3Speak - Creator Studio - APIs explained along with example usage | Ecency