diff --git a/components/salesforce_rest_api/actions/add-contact-to-campaign/add-contact-to-campaign.mjs b/components/salesforce_rest_api/actions/add-contact-to-campaign/add-contact-to-campaign.mjs index e34e0fbf29b30..eb431dd0cde89 100644 --- a/components/salesforce_rest_api/actions/add-contact-to-campaign/add-contact-to-campaign.mjs +++ b/components/salesforce_rest_api/actions/add-contact-to-campaign/add-contact-to-campaign.mjs @@ -5,7 +5,7 @@ export default { key: "salesforce_rest_api-add-contact-to-campaign", name: "Add Contact to Campaign", description: "Adds an existing contact to an existing campaign. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.228.0.object_reference.meta/object_reference/sforce_api_objects_campaignmember.htm)", - version: "0.1.0", + version: "0.1.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/add-lead-to-campaign/add-lead-to-campaign.mjs b/components/salesforce_rest_api/actions/add-lead-to-campaign/add-lead-to-campaign.mjs index ac4dc7fe5aa01..2f42ded41ac10 100644 --- a/components/salesforce_rest_api/actions/add-lead-to-campaign/add-lead-to-campaign.mjs +++ b/components/salesforce_rest_api/actions/add-lead-to-campaign/add-lead-to-campaign.mjs @@ -5,7 +5,7 @@ export default { key: "salesforce_rest_api-add-lead-to-campaign", name: "Add Lead to Campaign", description: "Adds an existing lead to an existing campaign. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.228.0.object_reference.meta/object_reference/sforce_api_objects_campaignmember.htm)", - version: "0.1.0", + version: "0.1.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/common/batch-operation.mjs b/components/salesforce_rest_api/actions/common/batch-operation.mjs new file mode 100644 index 0000000000000..6137b735280bb --- /dev/null +++ b/components/salesforce_rest_api/actions/common/batch-operation.mjs @@ -0,0 +1,86 @@ +import { + ConfigurationError, + getFileStream, +} from "@pipedream/platform"; +import app from "../../salesforce_rest_api.app.mjs"; + +export default { + props: { + app, + csvFilePath: { + type: "string", + label: "CSV File Path Or URL", + description: "The path to the CSV file to process. Provide a path to a file in the `/tmp` directory (for example, `/tmp/data.csv`). If a URL is provided, the file will be downloaded to the `/tmp` directory. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_data.htm)", + }, + syncDir: { + type: "dir", + accessMode: "read", + sync: true, + }, + }, + methods: { + getObject() { + throw new ConfigurationError("getObject method not implemented"); + }, + getOperation() { + throw new ConfigurationError("getOperation method not implemented"); + }, + getSummary() { + throw new ConfigurationError("getSummary method not implemented"); + }, + async processBulkOperation({ + object, operation, csvData, externalIdFieldName, ...args + } = {}) { + const { app } = this; + const job = await app.createBulkJob({ + ...args, + data: { + object, + operation, + externalIdFieldName, + }, + }); + + await app.uploadBulkJobData({ + ...args, + jobId: job.id, + data: csvData, + }); + + await app.patchBulkJob({ + ...args, + jobId: job.id, + data: { + state: "UploadComplete", + }, + }); + + return app.getBulkJobInfo({ + ...args, + jobId: job.id, + }); + }, + }, + async run({ $ }) { + const { + processBulkOperation, + getObject, + getOperation, + getSummary, + csvFilePath, + } = this; + + const csvData = await getFileStream(csvFilePath); + + const result = await processBulkOperation({ + $, + object: getObject(), + operation: getOperation(), + csvData, + }); + + $.export("$summary", getSummary()); + + return result; + }, +}; diff --git a/components/salesforce_rest_api/actions/convert-soap-xml-to-json/convert-soap-xml-to-json.mjs b/components/salesforce_rest_api/actions/convert-soap-xml-to-json/convert-soap-xml-to-json.mjs index 076f0e9979af2..dd055c94e5941 100644 --- a/components/salesforce_rest_api/actions/convert-soap-xml-to-json/convert-soap-xml-to-json.mjs +++ b/components/salesforce_rest_api/actions/convert-soap-xml-to-json/convert-soap-xml-to-json.mjs @@ -5,7 +5,7 @@ export default { key: "salesforce_rest_api-convert-soap-xml-to-json", name: "Convert SOAP XML Object to JSON", description: "Converts a SOAP XML Object received from Salesforce to JSON", - version: "0.0.6", + version: "0.0.7", type: "action", props: { salesforce_rest_api, diff --git a/components/salesforce_rest_api/actions/create-account/create-account.mjs b/components/salesforce_rest_api/actions/create-account/create-account.mjs index 8ecf098b909bf..1de141e4bff85 100644 --- a/components/salesforce_rest_api/actions/create-account/create-account.mjs +++ b/components/salesforce_rest_api/actions/create-account/create-account.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-account", name: "Create Account", description: `Creates a Salesforce account. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-accounts-batch/create-accounts-batch.mjs b/components/salesforce_rest_api/actions/create-accounts-batch/create-accounts-batch.mjs new file mode 100644 index 0000000000000..4dbcd3030616e --- /dev/null +++ b/components/salesforce_rest_api/actions/create-accounts-batch/create-accounts-batch.mjs @@ -0,0 +1,22 @@ +import common from "../common/batch-operation.mjs"; + +export default { + ...common, + key: "salesforce_rest_api-create-accounts-batch", + name: "Create Accounts (Batch)", + description: "Create multiple Accounts in Salesforce using Bulk API 2.0. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_understanding_bulk2_ingest.htm)", + version: "0.0.1", + type: "action", + methods: { + ...common.methods, + getObject() { + return "Account"; + }, + getOperation() { + return "insert"; + }, + getSummary() { + return "Successfully created Accounts"; + }, + }, +}; diff --git a/components/salesforce_rest_api/actions/create-attachment/create-attachment.mjs b/components/salesforce_rest_api/actions/create-attachment/create-attachment.mjs index 6b1cbc86665bc..6171a359d6dcd 100644 --- a/components/salesforce_rest_api/actions/create-attachment/create-attachment.mjs +++ b/components/salesforce_rest_api/actions/create-attachment/create-attachment.mjs @@ -18,7 +18,7 @@ export default { key: "salesforce_rest_api-create-attachment", name: "Create Attachment", description: `Creates an Attachment on a parent object. [See the documentation](${docsLink})`, - version: "0.5.1", + version: "0.5.2", type: "action", props, async run({ $ }) { diff --git a/components/salesforce_rest_api/actions/create-campaign/create-campaign.mjs b/components/salesforce_rest_api/actions/create-campaign/create-campaign.mjs index e30835c78ca0b..762db4999ed0a 100644 --- a/components/salesforce_rest_api/actions/create-campaign/create-campaign.mjs +++ b/components/salesforce_rest_api/actions/create-campaign/create-campaign.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-campaign", name: "Create Campaign", description: `Creates a marketing campaign. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-case/create-case.mjs b/components/salesforce_rest_api/actions/create-case/create-case.mjs index e44943c686121..f03bc510a2b27 100644 --- a/components/salesforce_rest_api/actions/create-case/create-case.mjs +++ b/components/salesforce_rest_api/actions/create-case/create-case.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-case", name: "Create Case", description: `Creates a Case, which represents a customer issue or problem. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-casecomment/create-casecomment.mjs b/components/salesforce_rest_api/actions/create-casecomment/create-casecomment.mjs index 575113c430eac..7216f2cc0d258 100644 --- a/components/salesforce_rest_api/actions/create-casecomment/create-casecomment.mjs +++ b/components/salesforce_rest_api/actions/create-casecomment/create-casecomment.mjs @@ -17,7 +17,7 @@ export default { key: "salesforce_rest_api-create-casecomment", name: "Create Case Comment", description: `Creates a Case Comment on a selected Case. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", props, async run({ $ }) { diff --git a/components/salesforce_rest_api/actions/create-contact/create-contact.mjs b/components/salesforce_rest_api/actions/create-contact/create-contact.mjs index 1e90e785aa6bb..9d0b612d65fc9 100644 --- a/components/salesforce_rest_api/actions/create-contact/create-contact.mjs +++ b/components/salesforce_rest_api/actions/create-contact/create-contact.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-contact", name: "Create Contact", description: `Creates a contact. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-content-note/create-content-note.mjs b/components/salesforce_rest_api/actions/create-content-note/create-content-note.mjs index ced5bf4476291..3b6aaf644b587 100644 --- a/components/salesforce_rest_api/actions/create-content-note/create-content-note.mjs +++ b/components/salesforce_rest_api/actions/create-content-note/create-content-note.mjs @@ -27,7 +27,7 @@ export default { key: "salesforce_rest_api-create-content-note", name: "Create Content Note", description: `Creates a content note. [See the documentation](${docsLink}) and [Set Up Notes](https://help.salesforce.com/s/articleView?id=sales.notes_admin_setup.htm&type=5).`, - version: "0.0.1", + version: "0.0.2", type: "action", props: { ...contentNoteProps, diff --git a/components/salesforce_rest_api/actions/create-event/create-event.mjs b/components/salesforce_rest_api/actions/create-event/create-event.mjs index b427102b2ccd8..deb4ba6db72ad 100644 --- a/components/salesforce_rest_api/actions/create-event/create-event.mjs +++ b/components/salesforce_rest_api/actions/create-event/create-event.mjs @@ -9,7 +9,7 @@ export default { key: "salesforce_rest_api-create-event", name: "Create Event", description: `Creates an event. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-lead/create-lead.mjs b/components/salesforce_rest_api/actions/create-lead/create-lead.mjs index e440b44863bd0..5a519c9737ad0 100644 --- a/components/salesforce_rest_api/actions/create-lead/create-lead.mjs +++ b/components/salesforce_rest_api/actions/create-lead/create-lead.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-lead", name: "Create Lead", description: `Creates a lead. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-note/create-note.mjs b/components/salesforce_rest_api/actions/create-note/create-note.mjs index b001e2dedfca9..e8d3ee87a5478 100644 --- a/components/salesforce_rest_api/actions/create-note/create-note.mjs +++ b/components/salesforce_rest_api/actions/create-note/create-note.mjs @@ -17,7 +17,7 @@ export default { key: "salesforce_rest_api-create-note", name: "Create Note", description: `Creates a note. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", props, async run({ $ }) { diff --git a/components/salesforce_rest_api/actions/create-opportunities-batch/create-opportunities-batch.mjs b/components/salesforce_rest_api/actions/create-opportunities-batch/create-opportunities-batch.mjs new file mode 100644 index 0000000000000..4a9e268d563fd --- /dev/null +++ b/components/salesforce_rest_api/actions/create-opportunities-batch/create-opportunities-batch.mjs @@ -0,0 +1,22 @@ +import common from "../common/batch-operation.mjs"; + +export default { + ...common, + key: "salesforce_rest_api-create-opportunities-batch", + name: "Create Opportunities (Batch)", + description: "Create multiple Opportunities in Salesforce using Bulk API 2.0. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_understanding_bulk2_ingest.htm)", + version: "0.0.1", + type: "action", + methods: { + ...common.methods, + getObject() { + return "Opportunity"; + }, + getOperation() { + return "insert"; + }, + getSummary() { + return "Successfully created Opportunities"; + }, + }, +}; diff --git a/components/salesforce_rest_api/actions/create-opportunity/create-opportunity.mjs b/components/salesforce_rest_api/actions/create-opportunity/create-opportunity.mjs index 933047d33df0a..a62ca17115225 100644 --- a/components/salesforce_rest_api/actions/create-opportunity/create-opportunity.mjs +++ b/components/salesforce_rest_api/actions/create-opportunity/create-opportunity.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-opportunity", name: "Create Opportunity", description: `Creates an opportunity. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-record/create-record.mjs b/components/salesforce_rest_api/actions/create-record/create-record.mjs index 28a72030a31cd..5ee91e3e690ec 100644 --- a/components/salesforce_rest_api/actions/create-record/create-record.mjs +++ b/components/salesforce_rest_api/actions/create-record/create-record.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-create-record", name: "Create Record", description: "Create a record of a given object. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_sobject_create.htm)", - version: "0.3.1", + version: "0.3.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/create-task/create-task.mjs b/components/salesforce_rest_api/actions/create-task/create-task.mjs index d4ebb4703c606..c35b9811364e1 100644 --- a/components/salesforce_rest_api/actions/create-task/create-task.mjs +++ b/components/salesforce_rest_api/actions/create-task/create-task.mjs @@ -9,7 +9,7 @@ export default { key: "salesforce_rest_api-create-task", name: "Create Task", description: `Creates a task. [See the documentation](${docsLink})`, - version: "0.4.1", + version: "0.4.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/create-user/create-user.mjs b/components/salesforce_rest_api/actions/create-user/create-user.mjs index a41f116115a1b..9c8633ef8f92f 100644 --- a/components/salesforce_rest_api/actions/create-user/create-user.mjs +++ b/components/salesforce_rest_api/actions/create-user/create-user.mjs @@ -9,7 +9,7 @@ export default { key: "salesforce_rest_api-create-user", name: "Create User", description: `Creates a Salesforce user. [See the documentation](${docsLink})`, - version: "0.1.1", + version: "0.1.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/delete-opportunity/delete-opportunity.mjs b/components/salesforce_rest_api/actions/delete-opportunity/delete-opportunity.mjs index 8d7ccec6c201e..fb70087f1bd02 100644 --- a/components/salesforce_rest_api/actions/delete-opportunity/delete-opportunity.mjs +++ b/components/salesforce_rest_api/actions/delete-opportunity/delete-opportunity.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-delete-opportunity", name: "Delete Opportunity", description: "Deletes an opportunity. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.228.0.api_rest.meta/api_rest/dome_delete_record.htm)", - version: "0.3.0", + version: "0.3.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/delete-record/delete-record.mjs b/components/salesforce_rest_api/actions/delete-record/delete-record.mjs index 4ea946d854315..478dbc623f706 100644 --- a/components/salesforce_rest_api/actions/delete-record/delete-record.mjs +++ b/components/salesforce_rest_api/actions/delete-record/delete-record.mjs @@ -5,7 +5,7 @@ export default { name: "Delete Record", description: "Deletes an existing record in an object. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_sobject_retrieve_delete.htm)", - version: "0.2.0", + version: "0.2.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/find-records/find-records.mjs b/components/salesforce_rest_api/actions/find-records/find-records.mjs index 813f662dc9e65..65f83198ae6af 100644 --- a/components/salesforce_rest_api/actions/find-records/find-records.mjs +++ b/components/salesforce_rest_api/actions/find-records/find-records.mjs @@ -5,7 +5,7 @@ export default { name: "Find Records", description: "Retrieves selected fields for some or all records of a selected object. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_get_field_values.htm)", - version: "0.2.0", + version: "0.2.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/get-case/get-case.mjs b/components/salesforce_rest_api/actions/get-case/get-case.mjs index 06c33203e0f71..04db7cca5d3af 100644 --- a/components/salesforce_rest_api/actions/get-case/get-case.mjs +++ b/components/salesforce_rest_api/actions/get-case/get-case.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-get-case", name: "Get Case", description: "Retrieves a case by its ID. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_get_field_values.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/get-user/get-user.mjs b/components/salesforce_rest_api/actions/get-user/get-user.mjs index 4f0b8a51962ca..5023a0c74a328 100644 --- a/components/salesforce_rest_api/actions/get-user/get-user.mjs +++ b/components/salesforce_rest_api/actions/get-user/get-user.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-get-user", name: "Get User", description: "Retrieves a user by their ID. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_get_field_values.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/insert-blob-data/insert-blob-data.mjs b/components/salesforce_rest_api/actions/insert-blob-data/insert-blob-data.mjs index ab9050fae8a14..6d65b9a252c08 100644 --- a/components/salesforce_rest_api/actions/insert-blob-data/insert-blob-data.mjs +++ b/components/salesforce_rest_api/actions/insert-blob-data/insert-blob-data.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-insert-blob-data", name: "Insert Blob Data", description: "Inserts blob data in Salesforce standard objects. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.228.0.api_rest.meta/api_rest/dome_sobject_insert_update_blob.htm)", - version: "0.2.8", + version: "0.2.9", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/list-case-comments/list-case-comments.mjs b/components/salesforce_rest_api/actions/list-case-comments/list-case-comments.mjs index 2080bd18339ce..52f85023e3244 100644 --- a/components/salesforce_rest_api/actions/list-case-comments/list-case-comments.mjs +++ b/components/salesforce_rest_api/actions/list-case-comments/list-case-comments.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-list-case-comments", name: "List Case Comments", description: "Lists all comments for a case. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_get_field_values.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/list-email-messages/list-email-messages.mjs b/components/salesforce_rest_api/actions/list-email-messages/list-email-messages.mjs index 00feecf859654..1a97e399aab67 100644 --- a/components/salesforce_rest_api/actions/list-email-messages/list-email-messages.mjs +++ b/components/salesforce_rest_api/actions/list-email-messages/list-email-messages.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-list-email-messages", name: "List Email Messages", description: "Lists all email messages for a case. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_get_field_values.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/list-email-templates/list-email-templates.mjs b/components/salesforce_rest_api/actions/list-email-templates/list-email-templates.mjs index d61c43d2e5712..3b11e44226aa0 100644 --- a/components/salesforce_rest_api/actions/list-email-templates/list-email-templates.mjs +++ b/components/salesforce_rest_api/actions/list-email-templates/list-email-templates.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-list-email-templates", name: "List Email Templates", description: "Lists all email templates. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_emailtemplate.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/list-knowledge-articles/list-knowledge-articles.mjs b/components/salesforce_rest_api/actions/list-knowledge-articles/list-knowledge-articles.mjs index 05dbcc74fb4a2..9c911349583d7 100644 --- a/components/salesforce_rest_api/actions/list-knowledge-articles/list-knowledge-articles.mjs +++ b/components/salesforce_rest_api/actions/list-knowledge-articles/list-knowledge-articles.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-list-knowledge-articles", name: "List Knowledge Articles", description: "Lists all knowledge articles. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_knowledgearticle.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/post-feed-to-chatter/post-feed-to-chatter.mjs b/components/salesforce_rest_api/actions/post-feed-to-chatter/post-feed-to-chatter.mjs index 99a221ffddba5..675781c28ad9c 100644 --- a/components/salesforce_rest_api/actions/post-feed-to-chatter/post-feed-to-chatter.mjs +++ b/components/salesforce_rest_api/actions/post-feed-to-chatter/post-feed-to-chatter.mjs @@ -5,7 +5,7 @@ export default { name: "Post a Message to Chatter Feed", description: "Post a feed item in Chatter. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.chatterapi.meta/chatterapi/quickreference_post_feed_item.htm)", - version: "0.1.0", + version: "0.1.1", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/search-string/search-string.mjs b/components/salesforce_rest_api/actions/search-string/search-string.mjs index a04a990e92c42..8ba85afe5819f 100644 --- a/components/salesforce_rest_api/actions/search-string/search-string.mjs +++ b/components/salesforce_rest_api/actions/search-string/search-string.mjs @@ -5,7 +5,7 @@ export default { name: "Search Object Records", description: "Searches for records in an object using a parameterized search. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_search_parameterized_get.htm)", - version: "0.0.2", + version: "0.0.3", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/send-email/send-email.mjs b/components/salesforce_rest_api/actions/send-email/send-email.mjs index 83f3580c461da..e987897d9c042 100644 --- a/components/salesforce_rest_api/actions/send-email/send-email.mjs +++ b/components/salesforce_rest_api/actions/send-email/send-email.mjs @@ -4,7 +4,7 @@ export default { key: "salesforce_rest_api-send-email", name: "Send Email", description: "Sends an email. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_action.meta/api_action/actions_obj_email_simple.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/soql-search/soql-search.mjs b/components/salesforce_rest_api/actions/soql-search/soql-search.mjs index 5d9297b9e6c70..521d206860c25 100644 --- a/components/salesforce_rest_api/actions/soql-search/soql-search.mjs +++ b/components/salesforce_rest_api/actions/soql-search/soql-search.mjs @@ -7,7 +7,7 @@ export default { key: "salesforce_rest_api-soql-search", name: "SOQL Query (Object Query)", description: `Executes a [Salesforce Object Query Language (SOQL)](${docsLink}) query-based, SQL-like search.`, - version: "0.2.9", + version: "0.2.10", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/sosl-search/sosl-search.mjs b/components/salesforce_rest_api/actions/sosl-search/sosl-search.mjs index 5ae3f484c16f0..6253ebafed995 100644 --- a/components/salesforce_rest_api/actions/sosl-search/sosl-search.mjs +++ b/components/salesforce_rest_api/actions/sosl-search/sosl-search.mjs @@ -12,7 +12,7 @@ export default { key: "salesforce_rest_api-sosl-search", name: "SOSL Search (Object Search)", description: `Executes a [Salesforce Object Search Language (SOSL)](${docsLink}) text-based search query.`, - version: "0.2.8", + version: "0.2.9", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/update-account/update-account.mjs b/components/salesforce_rest_api/actions/update-account/update-account.mjs index 4868eb90c6c03..e7f6433124997 100644 --- a/components/salesforce_rest_api/actions/update-account/update-account.mjs +++ b/components/salesforce_rest_api/actions/update-account/update-account.mjs @@ -15,7 +15,7 @@ export default { key: "salesforce_rest_api-update-account", name: "Update Account", description: `Updates a Salesforce account. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/update-accounts-batch/update-accounts-batch.mjs b/components/salesforce_rest_api/actions/update-accounts-batch/update-accounts-batch.mjs new file mode 100644 index 0000000000000..75620d6136701 --- /dev/null +++ b/components/salesforce_rest_api/actions/update-accounts-batch/update-accounts-batch.mjs @@ -0,0 +1,22 @@ +import common from "../common/batch-operation.mjs"; + +export default { + ...common, + key: "salesforce_rest_api-update-accounts-batch", + name: "Update Accounts (Batch)", + description: "Update multiple Accounts in Salesforce using Bulk API 2.0. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_understanding_bulk2_ingest.htm)", + version: "0.0.1", + type: "action", + methods: { + ...common.methods, + getObject() { + return "Account"; + }, + getOperation() { + return "update"; + }, + getSummary() { + return "Successfully updated Accounts"; + }, + }, +}; diff --git a/components/salesforce_rest_api/actions/update-contact/update-contact.mjs b/components/salesforce_rest_api/actions/update-contact/update-contact.mjs index 36f63b47f7392..beb843a540aee 100644 --- a/components/salesforce_rest_api/actions/update-contact/update-contact.mjs +++ b/components/salesforce_rest_api/actions/update-contact/update-contact.mjs @@ -16,7 +16,7 @@ export default { key: "salesforce_rest_api-update-contact", name: "Update Contact", description: `Updates a contact. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/update-email-template/update-email-template.mjs b/components/salesforce_rest_api/actions/update-email-template/update-email-template.mjs index 7065121424ad9..1d9d512b1671c 100644 --- a/components/salesforce_rest_api/actions/update-email-template/update-email-template.mjs +++ b/components/salesforce_rest_api/actions/update-email-template/update-email-template.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-update-email-template", name: "Update Email Template", description: "Updates an email template. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_update_fields.htm)", - version: "0.0.1", + version: "0.0.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/update-opportunities-batch/update-opportunities-batch.mjs b/components/salesforce_rest_api/actions/update-opportunities-batch/update-opportunities-batch.mjs new file mode 100644 index 0000000000000..b0bcd509e61ad --- /dev/null +++ b/components/salesforce_rest_api/actions/update-opportunities-batch/update-opportunities-batch.mjs @@ -0,0 +1,22 @@ +import common from "../common/batch-operation.mjs"; + +export default { + ...common, + key: "salesforce_rest_api-update-opportunities-batch", + name: "Update Opportunities (Batch)", + description: "Update multiple Opportunities in Salesforce using Bulk API 2.0. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_understanding_bulk2_ingest.htm)", + version: "0.0.1", + type: "action", + methods: { + ...common.methods, + getObject() { + return "Opportunity"; + }, + getOperation() { + return "update"; + }, + getSummary() { + return "Successfully updated Opportunities"; + }, + }, +}; diff --git a/components/salesforce_rest_api/actions/update-opportunity/update-opportunity.mjs b/components/salesforce_rest_api/actions/update-opportunity/update-opportunity.mjs index 46e6ff90b1dff..1c8d5d36ba16a 100644 --- a/components/salesforce_rest_api/actions/update-opportunity/update-opportunity.mjs +++ b/components/salesforce_rest_api/actions/update-opportunity/update-opportunity.mjs @@ -16,7 +16,7 @@ export default { key: "salesforce_rest_api-update-opportunity", name: "Update Opportunity", description: `Updates an opportunity. [See the documentation](${docsLink})`, - version: "0.3.1", + version: "0.3.2", type: "action", methods: { ...common.methods, diff --git a/components/salesforce_rest_api/actions/update-record/update-record.mjs b/components/salesforce_rest_api/actions/update-record/update-record.mjs index 5d175f183a360..f1e2e2fb5b3e5 100644 --- a/components/salesforce_rest_api/actions/update-record/update-record.mjs +++ b/components/salesforce_rest_api/actions/update-record/update-record.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-update-record", name: "Update Record", description: "Update fields of a record. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_update_fields.htm)", - version: "0.3.1", + version: "0.3.2", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/actions/upsert-record/upsert-record.mjs b/components/salesforce_rest_api/actions/upsert-record/upsert-record.mjs index a95b4321c4a72..93cb61d868468 100644 --- a/components/salesforce_rest_api/actions/upsert-record/upsert-record.mjs +++ b/components/salesforce_rest_api/actions/upsert-record/upsert-record.mjs @@ -8,7 +8,7 @@ export default { key: "salesforce_rest_api-upsert-record", name: "Upsert Record", description: "Create or update a record of a given object. [See the documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_upsert.htm)", - version: "0.0.2", + version: "0.0.3", type: "action", props: { salesforce, diff --git a/components/salesforce_rest_api/package.json b/components/salesforce_rest_api/package.json index eeea29b8909b2..cc20c610f0907 100644 --- a/components/salesforce_rest_api/package.json +++ b/components/salesforce_rest_api/package.json @@ -1,6 +1,6 @@ { "name": "@pipedream/salesforce_rest_api", - "version": "1.7.0", + "version": "1.8.0", "description": "Pipedream Salesforce (REST API) Components", "main": "salesforce_rest_api.app.mjs", "keywords": [ diff --git a/components/salesforce_rest_api/salesforce_rest_api.app.mjs b/components/salesforce_rest_api/salesforce_rest_api.app.mjs index cdf27c39ea0fc..7df2e24deafd8 100644 --- a/components/salesforce_rest_api/salesforce_rest_api.app.mjs +++ b/components/salesforce_rest_api/salesforce_rest_api.app.mjs @@ -366,5 +366,48 @@ export default { ...args, }); }, + createBulkJob(args = {}) { + return this._makeRequest({ + ...args, + method: "POST", + url: `${this._baseApiVersionUrl()}/jobs/ingest`, + data: { + contentType: "CSV", + columnDelimiter: "COMMA", + lineEnding: "LF", + ...args?.data, + }, + }); + }, + uploadBulkJobData({ + jobId, ...args + } = {}) { + return this._makeRequest({ + ...args, + method: "PUT", + url: `${this._baseApiVersionUrl()}/jobs/ingest/${jobId}/batches`, + headers: { + ...this._makeRequestHeaders(), + "Content-Type": "text/csv", + }, + }); + }, + patchBulkJob({ + jobId, ...args + } = {}) { + return this._makeRequest({ + ...args, + method: "PATCH", + url: `${this._baseApiVersionUrl()}/jobs/ingest/${jobId}`, + }); + }, + getBulkJobInfo({ + jobId, ...args + } = {}) { + return this._makeRequest({ + ...args, + url: `${this._baseApiVersionUrl()}/jobs/ingest/${jobId}`, + }); + }, }, }; diff --git a/components/salesforce_rest_api/sources/case-updated-instant/case-updated-instant.mjs b/components/salesforce_rest_api/sources/case-updated-instant/case-updated-instant.mjs index 66c17cdcd437b..dfd2f762c3f2d 100644 --- a/components/salesforce_rest_api/sources/case-updated-instant/case-updated-instant.mjs +++ b/components/salesforce_rest_api/sources/case-updated-instant/case-updated-instant.mjs @@ -7,7 +7,7 @@ export default { name: "Case Updated (Instant, of Selectable Type)", key: "salesforce_rest_api-case-updated-instant", description: "Emit new event when a case is updated. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/email-template-updated-instant/email-template-updated-instant.mjs b/components/salesforce_rest_api/sources/email-template-updated-instant/email-template-updated-instant.mjs index eccc9400d7dc7..4a89b0811d61d 100644 --- a/components/salesforce_rest_api/sources/email-template-updated-instant/email-template-updated-instant.mjs +++ b/components/salesforce_rest_api/sources/email-template-updated-instant/email-template-updated-instant.mjs @@ -7,7 +7,7 @@ export default { name: "Email Template Updated (Instant, of Selectable Type)", key: "salesforce_rest_api-email-template-updated-instant", description: "Emit new event when an email template is updated. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/knowledge-article-updated-instant/knowledge-article-updated-instant.mjs b/components/salesforce_rest_api/sources/knowledge-article-updated-instant/knowledge-article-updated-instant.mjs index 432527ce0d736..43e1f8ddde81a 100644 --- a/components/salesforce_rest_api/sources/knowledge-article-updated-instant/knowledge-article-updated-instant.mjs +++ b/components/salesforce_rest_api/sources/knowledge-article-updated-instant/knowledge-article-updated-instant.mjs @@ -7,7 +7,7 @@ export default { name: "Knowledge Article Updated (Instant, of Selectable Type)", key: "salesforce_rest_api-knowledge-article-updated-instant", description: "Emit new event when a knowledge article is updated. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/new-case-instant/new-case-instant.mjs b/components/salesforce_rest_api/sources/new-case-instant/new-case-instant.mjs index 9c480289e8610..3d0b223b5b036 100644 --- a/components/salesforce_rest_api/sources/new-case-instant/new-case-instant.mjs +++ b/components/salesforce_rest_api/sources/new-case-instant/new-case-instant.mjs @@ -7,7 +7,7 @@ export default { name: "New Case (Instant, of Selectable Type)", key: "salesforce_rest_api-new-case-instant", description: "Emit new event when a case is created. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/new-email-template-instant/new-email-template-instant.mjs b/components/salesforce_rest_api/sources/new-email-template-instant/new-email-template-instant.mjs index 19def8175c8b4..d60b48a522787 100644 --- a/components/salesforce_rest_api/sources/new-email-template-instant/new-email-template-instant.mjs +++ b/components/salesforce_rest_api/sources/new-email-template-instant/new-email-template-instant.mjs @@ -7,7 +7,7 @@ export default { name: "New Email Template (Instant, of Selectable Type)", key: "salesforce_rest_api-new-email-template-instant", description: "Emit new event when an email template is created. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/new-knowledge-article-instant/new-knowledge-article-instant.mjs b/components/salesforce_rest_api/sources/new-knowledge-article-instant/new-knowledge-article-instant.mjs index 9ca6363c8eea7..1e28240544641 100644 --- a/components/salesforce_rest_api/sources/new-knowledge-article-instant/new-knowledge-article-instant.mjs +++ b/components/salesforce_rest_api/sources/new-knowledge-article-instant/new-knowledge-article-instant.mjs @@ -7,7 +7,7 @@ export default { name: "New Knowledge Article (Instant, of Selectable Type)", key: "salesforce_rest_api-new-knowledge-article-instant", description: "Emit new event when a knowledge article is created. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.0.1", + version: "0.0.2", props: { salesforce: common.props.salesforce, db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/new-outbound-message/new-outbound-message.mjs b/components/salesforce_rest_api/sources/new-outbound-message/new-outbound-message.mjs index a0d232dcbb309..771efd9b8458a 100644 --- a/components/salesforce_rest_api/sources/new-outbound-message/new-outbound-message.mjs +++ b/components/salesforce_rest_api/sources/new-outbound-message/new-outbound-message.mjs @@ -6,7 +6,7 @@ export default { name: "New Outbound Message (Instant)", key: "salesforce_rest_api-new-outbound-message", description: "Emit new event when a new outbound message is received in Salesforce.", - version: "0.1.7", + version: "0.1.8", dedupe: "unique", props: { db: "$.service.db", diff --git a/components/salesforce_rest_api/sources/new-record-instant/new-record-instant.mjs b/components/salesforce_rest_api/sources/new-record-instant/new-record-instant.mjs index 14c2dde66c1ab..ba5e6c7d8bfff 100644 --- a/components/salesforce_rest_api/sources/new-record-instant/new-record-instant.mjs +++ b/components/salesforce_rest_api/sources/new-record-instant/new-record-instant.mjs @@ -6,7 +6,7 @@ export default { name: "New Record (Instant, of Selectable Type)", key: "salesforce_rest_api-new-record-instant", description: "Emit new event when a record of the selected object type is created. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.2.1", + version: "0.2.2", props: { ...common.props, fieldsToObtain: { diff --git a/components/salesforce_rest_api/sources/record-deleted-instant/record-deleted-instant.mjs b/components/salesforce_rest_api/sources/record-deleted-instant/record-deleted-instant.mjs index 8b3b239ea4b31..102c892a3a9ea 100644 --- a/components/salesforce_rest_api/sources/record-deleted-instant/record-deleted-instant.mjs +++ b/components/salesforce_rest_api/sources/record-deleted-instant/record-deleted-instant.mjs @@ -7,7 +7,7 @@ export default { name: "New Deleted Record (Instant, of Selectable Type)", key: "salesforce_rest_api-record-deleted-instant", description: "Emit new event when a record of the selected object type is deleted. [See the documentation](https://sforce.co/3msDDEE)", - version: "0.1.1", + version: "0.1.2", methods: { ...common.methods, generateWebhookMeta(data) { diff --git a/components/salesforce_rest_api/sources/record-updated-instant/record-updated-instant.mjs b/components/salesforce_rest_api/sources/record-updated-instant/record-updated-instant.mjs index c0e98b34421a0..72c8bcbe16ac8 100644 --- a/components/salesforce_rest_api/sources/record-updated-instant/record-updated-instant.mjs +++ b/components/salesforce_rest_api/sources/record-updated-instant/record-updated-instant.mjs @@ -7,7 +7,7 @@ export default { name: "New Updated Record (Instant, of Selectable Type)", key: "salesforce_rest_api-record-updated-instant", description: "Emit new event when a record of the selected type is updated. [See the documentation](https://sforce.co/3yPSJZy)", - version: "0.2.1", + version: "0.2.2", props: { ...common.props, fields: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index faad3eb763c85..6bf2c7e87a116 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -439,8 +439,7 @@ importers: specifier: ^3.0.0 version: 3.0.3 - components/afosto: - specifiers: {} + components/afosto: {} components/aftership: dependencies: @@ -38907,8 +38906,6 @@ snapshots: '@putout/operator-filesystem': 5.0.0(putout@36.13.1(eslint@8.57.1)(typescript@5.6.3)) '@putout/operator-json': 2.2.0 putout: 36.13.1(eslint@8.57.1)(typescript@5.6.3) - transitivePeerDependencies: - - supports-color '@putout/operator-regexp@1.0.0(putout@36.13.1(eslint@8.57.1)(typescript@5.6.3))': dependencies: