with Box and Google Cloud?
Emit new Pub/Sub topic in your GCP account. Messages published to this topic are emitted from the Pipedream source.
Emit new event when an event with subscribed event source triggered on a target. See the documentation
Emit new events with the results of an arbitrary query
Emit new event when a new file uploaded on a target. See the documentation
Downloads a file from Box to your workflow's /tmp
directory. See the documentation
Inserts rows into a BigQuery table. See the docs and for an example here
Searches for files, folders, web links, and shared files across the users content or across the entire enterprise. See the documentation
The Box API offers a playground for enhancing content management and collaboration within your cloud storage. With Pipedream, you can orchestrate Box's functionality to automate document handling, streamline approval flows, sync files across apps, and trigger actions based on file events. Think of Pipedream as the glue that allows you to connect Box with your tech stack, triggering workflows with new file uploads, comments, or when sharing settings change, to enhance productivity and minimize manual labor.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
box: {
type: "app",
app: "box",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.box.com/2.0/users/me`,
headers: {
Authorization: `Bearer ${this.box.$auth.oauth_access_token}`,
},
})
},
})
The Google Cloud API opens a world of possibilities for enhancing cloud operations and automating tasks. It empowers you to manage, scale, and fine-tune various services within the Google Cloud Platform (GCP) programmatically. With Pipedream, you can harness this power to create intricate workflows, trigger cloud functions based on events from other apps, manage resources, and analyze data, all in a serverless environment. The ability to interconnect GCP services with numerous other apps enriches automation, making it easier to synchronize data, streamline development workflows, and deploy applications efficiently.
module.exports = defineComponent({
props: {
google_cloud: {
type: "app",
app: "google_cloud",
}
},
async run({steps, $}) {
// Required workaround to get the @google-cloud/storage package
// working correctly on Pipedream
require("@dylburger/umask")()
const { Storage } = require('@google-cloud/storage')
const key = JSON.parse(this.google_cloud.$auth.key_json)
const storage = new Storage({
projectId: key.project_id,
credentials: {
client_email: key.client_email,
private_key: key.private_key,
}
})
await storage.authClient.getCredentials()
return {
status: "success",
authenticated: true,
projectId: key.project_id,
serviceAccount: key.client_email
}
},
})