Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
Emit new event when a new message is posted to one or more channels
Emit new event when a new autonomous database is created in a specified compartment. See the documentation
Emit new event when a compute instance changes state (e.g., from stopped to running). This requires instance OCID and proper event rules set up in Oracle Cloud Infrastructure. See the documentation
Emit new event when a new object is uploaded to a specified Oracle Cloud Infrastructure Object Storage bucket. See the documentation
Create or update an object in a specified Oracle Cloud Infrastructure Object Storage bucket. See the documentation
Send a message to a public or private channel. See the documentation
Delete an object from a specified Oracle Cloud Infrastructure Object Storage bucket. See the documentation
Send a message to a user, group, private channel or public channel. See the documentation
Configure custom blocks and send to a channel, group, or user. See the documentation
The Pipedream Slack app enables you to build event-driven workflows that interact with the Slack API. Once you authorize the Pipedream app's access to your workspace, you can use Pipedream workflows to perform common Slack actions or write your own code against the Slack API.
The Pipedream Slack app is not a typical app. You don't interact with it directly as a bot, and it doesn't add custom functionality to your workspace out of the box. It makes it easier to automate anything you'd typically use the Slack API for, using Pipedream workflows.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
slack: {
type: "app",
app: "slack",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://slack.com/api/users.profile.get`,
headers: {
Authorization: `Bearer ${this.slack.$auth.oauth_access_token}`,
},
})
},
})
import * as common from "oci-common";
import * as identity from "oci-identity";
export default defineComponent({
props: {
oracle_cloud_infrastructure: {
type: "app",
app: "oracle_cloud_infrastructure",
},
},
async run({ steps, $ }) {
const tenancyId = this.oracle_cloud_infrastructure.$auth.tenancy_id;
const userId = this.oracle_cloud_infrastructure.$auth.user_id;
const fingerprint = this.oracle_cloud_infrastructure.$auth.fingerprint;
const regionStr = this.oracle_cloud_infrastructure.$auth.region;
const privateKey = this.oracle_cloud_infrastructure.$auth.private_key;
// Convert the region string into a Region object
const region = common.Region.fromRegionId(regionStr);
// Create a simple authentication provider using your credentials.
// If your private key has a passphrase, replace null with the passphrase.
const provider = new common.SimpleAuthenticationDetailsProvider(
tenancyId,
userId,
fingerprint,
privateKey,
null, // passphrase (if needed)
region
);
// Create an IdentityClient using the provider.
const identityClient = new identity.IdentityClient({
authenticationDetailsProvider: provider,
});
// Prepare a request to list compartments for your tenancy.
const listCompartmentsRequest = {
compartmentId: tenancyId,
};
// Call the OCI API to list compartments.
const response = await identityClient.listCompartments(listCompartmentsRequest);
// The response object contains details such as items (the list of compartments).
return response;
},
});