elsa-workflows / elsa-workflows/elsa-extensions

Add Salesforce Integration

Open
#4 0 comments 0 reactions 0 assignees View on GitHub
triaged
Dominant language
C#
Stars
49
Forks
48
Avg merge
21h 35m
Merged PRs (30d)
20

Description

This issue tracks the implementation of an integration for **Salesforce** in Elsa Workflows. The module should allow workflows to interact with Salesforce, supporting record management, bulk jobs, API calls, and event monitoring.

## **Tasks**
- [ ] Create a new module: `Elsa.Integrations.Salesforce`
- [ ] Implement **Workflow Activities**:
- [ ] **CompleteAbortJob** - Completes or aborts a bulk data job.
- [ ] **CreateJob** - Creates a new bulk data job.
- [ ] **CreateRecord** - Creates a new record in an object.
- [ ] **DeleteRecord** - Deletes a record from an object.
- [ ] **DownloadAttachmentDocument** - Downloads an attachment or a document.
- [ ] **GetRecord** - Retrieves a specified record from an object.
- [ ] **ListJobs** - Retrieves all bulk data jobs in the organization.
- [ ] **MakeAPICall** - Performs an arbitrary authorized API call.
- [ ] **MakeAPICallAdvanced** - Performs an API call with a personalized base URL.
- [ ] **PostMessageToChatterFeed** - Posts a message to a Chatter feed.
- [ ] **SearchRecordsSOQL** - Lists or searches for records in an object using SOQL query.
- [ ] **SearchRecordsSOSL** - Searches for records in an object using SOSL query.
- [ ] **UpdateRecord** - Updates an existing record in an object.
- [ ] **UpsertRecord** - Upserts a record, creating it if it does not exist.
- [ ] **WatchJobs** - Triggers when a bulk data job is created.
- [ ] **WatchRecordFields** - Triggers when a field in an object has changed.
- [ ] **WatchRecords** - Triggers when a record is created or updated in an object.

- [ ] Add Unit Tests
- [ ] Add Documentation (`README.md`)

## **References**
- 📖 [Salesforce API Docs](https://developer.salesforce.com/docs/)
- 🛠️ [Salesforce .NET SDK](https://www.nuget.org/packages/Salesforce.Force/)

## **Notes**
- This integration should follow the standard Elsa Workflows structure.
- It should support authentication via OAuth 2.0.
- Ensure compatibility with **SOQL** and **SOSL** queries for efficient record retrieval.
- Proper handling of **bulk data jobs** and **real-time triggers** should be implemented.

## **Contributor Guidelines**
If you're interested in working on this issue:

1. Comment below to claim it.
2. Follow the [CONTRIBUTING.md](https://github.com/elsa-workflows/elsa-integrations/blob/main/CONTRIBUTING.md) guide.
3. Submit a PR referencing this issue.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.