What do you want to automate

with MobyGames and Google Identity?

Prompt, edit and deploy AI agents that connect to MobyGames, Google Identity and 2,500+ other apps in seconds.

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
List Games with the MobyGames API

Provides a list of games. See the documentation

 
Try it
List Genres with the MobyGames API

Provides a list of genres which may be used for filtering games via the MobyGames API. See the documentation

 
Try it
List Platforms with the MobyGames API

List all platforms available for filtering games via the MobyGames API. See the documentation

 
Try it
Integrate the MobyGames API with the Google Identity API
Setup the MobyGames API trigger to run a workflow which integrates with the Google Identity API. Pipedream's integration platform allows you to integrate MobyGames and Google Identity remarkably fast. Free for developers.

Overview of MobyGames

The MobyGames API provides access to a vast database of video game information, including titles, platforms, release dates, and more. In Pipedream, you can leverage this API to create powerful integrations and automated workflows. You might fetch game data to curate personalized game recommendations, sync release information with your calendar, or compile game statistics for analysis.

Connect MobyGames

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    mobygames: {
      type: "app",
      app: "mobygames",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.mobygames.com/v1/games`,
      params: {
        api_key: `${this.mobygames.$auth.api_key}`,
      },
    })
  },
})

Connect Google Identity

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import axios from "axios";
import * as jsrsasign from "jsrsasign";

export default defineComponent({
  props: {
    google_identity: {
      type: "app",
      app: "google_identity",
    }
  },
  async run({ steps, $ }) {    
    const serviceAccountKey = JSON.parse(this.google_identity.$auth.service_account_key);
    const GOOGLE_OAUTH = 'https://www.googleapis.com/oauth2/v4/token';
    // add/remove your own scopes as needed
    const SCOPES = [
      'https://www.googleapis.com/auth/userinfo.email',
      'https://www.googleapis.com/auth/userinfo.profile',
      'https://www.googleapis.com/auth/cloud-platform',
      'https://www.googleapis.com/auth/cloud-identity',
    ];

    const getJwt = async function ({ client_email, private_key }, iat) {

      const header = {
        typ: 'JWT',
        alg: 'RS256',
      };

      const exp = iat + 3600;
      const payload = {
        aud: GOOGLE_OAUTH,
        iss: client_email,
        scope: SCOPES.join(' '),
        iat,
        exp,
      };

      const jwt = jsrsasign.KJUR.jws.JWS.sign(null, header, payload, private_key);
      return { jwt, exp };
    };

    const getToken = async function (serviceAccountKey) {
      const now = Math.floor(Date.now() / 1000);

      const jwtInfo = await getJwt(serviceAccountKey, now);

      const params = new URLSearchParams();
      params.append('grant_type', 'urn:ietf:params:oauth:grant-type:jwt-bearer');
      params.append('assertion', jwtInfo.jwt);

      const response = await axios.post(GOOGLE_OAUTH, params, {
        headers: {
          'Content-Type': 'application/x-www-form-urlencoded'
        }
      });

      const accessToken = response.data.access_token;
      return accessToken;
    };

    const generateOAuthToken = async function () {    
      return await getToken(serviceAccountKey);
    };

    // Call the function to generate the token
    const accessToken = await generateOAuthToken();

    // Call the Google Identity API to search for groups
    const response = await axios({
      method: "GET",
      url: "https://cloudidentity.googleapis.com/v1/groups:search",
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "Content-Type": "application/json"
      },
      params: {
        query: "parent == 'customers/C046psxkn'"
      }
    })

    return response.data
  },
})

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo