From 98ad3938dea69b5f6e1f3d6318d68aca60d4e391 Mon Sep 17 00:00:00 2001 From: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Date: Tue, 2 Jul 2024 15:31:37 +0530 Subject: [PATCH 01/11] Update Send a voice message via Infobip for each new form entry created in Wufoo_instructions.md (#461) --- ...bip for each new form entry created in Wufoo_instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/markdown/Send a voice message via Infobip for each new form entry created in Wufoo_instructions.md b/resources/markdown/Send a voice message via Infobip for each new form entry created in Wufoo_instructions.md index c1850c36f..07d341ad9 100644 --- a/resources/markdown/Send a voice message via Infobip for each new form entry created in Wufoo_instructions.md +++ b/resources/markdown/Send a voice message via Infobip for each new form entry created in Wufoo_instructions.md @@ -1,4 +1,4 @@ -To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/master/resources/markdown/Send%20a%20voice%20message%20via%20Infobip%20for%20each%20new%20form%20entry%20created%20in%20Wufoo_instructions.md) (opens in a new window). +To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Send%20a%20voice%20message%20via%20Infobip%20for%20each%20new%20form%20entry%20created%20in%20Wufoo_instructions.md) (opens in a new window). 1. Click **Use this template** to start using the template. 2. Connect to the following accounts by using your credentials: From e1c2784234fc369351bcd8726b8a17b30b9a3e7f Mon Sep 17 00:00:00 2001 From: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Date: Tue, 2 Jul 2024 15:32:39 +0530 Subject: [PATCH 02/11] Update Send an SMS via Infobip when an event is created in Google Calendar for each new Wufoo form entry_instructions.md (#462) --- ...oogle Calendar for each new Wufoo form entry_instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/markdown/Send an SMS via Infobip when an event is created in Google Calendar for each new Wufoo form entry_instructions.md b/resources/markdown/Send an SMS via Infobip when an event is created in Google Calendar for each new Wufoo form entry_instructions.md index 4ce919e92..f23d1246d 100644 --- a/resources/markdown/Send an SMS via Infobip when an event is created in Google Calendar for each new Wufoo form entry_instructions.md +++ b/resources/markdown/Send an SMS via Infobip when an event is created in Google Calendar for each new Wufoo form entry_instructions.md @@ -1,4 +1,4 @@ -To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/master/resources/markdown/Send%20an%20SMS%20via%20Infobip%20when%20an%20event%20is%20created%20in%20Google%20Calendar%20for%20each%20new%20Wufoo%20form%20entry_instructions.md) (opens in a new window). +To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Send%20an%20SMS%20via%20Infobip%20when%20an%20event%20is%20created%20in%20Google%20Calendar%20for%20each%20new%20Wufoo%20form%20entry_instructions.md) (opens in a new window). 1. Click **Use this template** to start using the template. 2. Connect to the following accounts by using your credentials: From d05cd0b554b0aaf560e9531080000b3ef43ec124 Mon Sep 17 00:00:00 2001 From: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Date: Tue, 2 Jul 2024 15:34:06 +0530 Subject: [PATCH 03/11] Update Send an invite to fill time entries in Toggl Track for each new employee added to BambooHR_instructions.md (#460) --- ...rack for each new employee added to BambooHR_instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/markdown/Send an invite to fill time entries in Toggl Track for each new employee added to BambooHR_instructions.md b/resources/markdown/Send an invite to fill time entries in Toggl Track for each new employee added to BambooHR_instructions.md index 29b5dd8c6..b986a4709 100644 --- a/resources/markdown/Send an invite to fill time entries in Toggl Track for each new employee added to BambooHR_instructions.md +++ b/resources/markdown/Send an invite to fill time entries in Toggl Track for each new employee added to BambooHR_instructions.md @@ -1,4 +1,4 @@ -To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/master/resources/markdown/Send%20an%20invite%20to%20fill%20time%20entries%20in%20Toggl%20Track%20for%20each%20new%20employee%20added%20to%20BambooHR_instructions.md) (opens in a new window). +To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Send%20an%20invite%20to%20fill%20time%20entries%20in%20Toggl%20Track%20for%20each%20new%20employee%20added%20to%20BambooHR_instructions.md) (opens in a new window). 1. Click **Use this template** to start using the template. 2. Connect to the following accounts by using your credentials: - [BambooHR](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-bamboohr) From f14b0e1a06c5b1081cfc5ea5a0b7468d4c0a8c56 Mon Sep 17 00:00:00 2001 From: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Date: Tue, 2 Jul 2024 15:34:40 +0530 Subject: [PATCH 04/11] Update Create time entries in Toggl Track for each new issue created in Jira_instructions.md (#457) --- ...ggl Track for each new issue created in Jira_instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/markdown/Create time entries in Toggl Track for each new issue created in Jira_instructions.md b/resources/markdown/Create time entries in Toggl Track for each new issue created in Jira_instructions.md index 8511bb87b..4e8cde7b6 100644 --- a/resources/markdown/Create time entries in Toggl Track for each new issue created in Jira_instructions.md +++ b/resources/markdown/Create time entries in Toggl Track for each new issue created in Jira_instructions.md @@ -1,4 +1,4 @@ -To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/master/resources/markdown/Create%20time%20entries%20in%20Toggl%20Track%20for%20each%20new%20issue%20created%20in%20Jira_instructions.md) (opens in a new window). +To refer to these instructions while editing the flow, open [the Github page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20time%20entries%20in%20Toggl%20Track%20for%20each%20new%20issue%20created%20in%20Jira_instructions.md) (opens in a new window). 1. Click **Use this template** to start using the template. 2. Connect to the following accounts by using your credentials: - [Jira](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-jira) From cda4bd005c35234a4d2c00680fdb360cea827f3b Mon Sep 17 00:00:00 2001 From: calixid <154254657+calixid@users.noreply.github.com> Date: Wed, 3 Jul 2024 11:49:50 +0530 Subject: [PATCH 05/11] Usecase added for Crystal Ball (#456) * Add files via upload * Update template-metadata.json * Create Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md * Create Create an annotation in Crystal Ball for any new product created in Shopify_instructions.md * Create Create an annotation in Crystal Ball for any new contact created in Salesforce_instructions.md * Update Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md * Update Create an annotation in Crystal Ball for any new product created in Shopify_instructions.md * Update Create an annotation in Crystal Ball for any new contact created in Salesforce_instructions.md * Update Create an annotation in Crystal Ball for any new contact created in Salesforce_instructions.md * Update Create an annotation in Crystal Ball for any new contact created in Salesforce.yaml * Update Create an annotation in Crystal Ball for any new product created in Shopify.yaml * Update Create an annotation in Crystal Ball for new Mailchimp campaigns.yaml * Update and rename Create an annotation in Crystal Ball for any new contact created in Salesforce.yaml to Create an annotation in Crystal Ball for each new contact created in Salesforce.yaml * Update and rename Create an annotation in Crystal Ball for any new product created in Shopify.yaml to Create an annotation in Crystal Ball for each new product created in Shopify.yaml * Rename Create an annotation in Crystal Ball for any new contact created in Salesforce_instructions.md to Create an annotation in Crystal Ball for each new contact created in Salesforce_instructions.md * Rename Create an annotation in Crystal Ball for any new product created in Shopify_instructions.md to Create an annotation in Crystal Ball for each new product created in Shopify_instructions.md * Update template-metadata.json * Corrections --------- Co-authored-by: Deepak Ayilliath --- ...ach new contact created in Salesforce.yaml | 119 ++++++++++++++++++ ...r each new product created in Shopify.yaml | 117 +++++++++++++++++ ...stal Ball for new Mailchimp campaigns.yaml | 51 ++++++++ ...tact created in Salesforce_instructions.md | 11 ++ ...product created in Shopify_instructions.md | 10 ++ ...or new Mailchimp campaigns_instructions.md | 11 ++ resources/template-metadata.json | 29 ++++- 7 files changed, 347 insertions(+), 1 deletion(-) create mode 100644 resources/Create an annotation in Crystal Ball for each new contact created in Salesforce.yaml create mode 100644 resources/Create an annotation in Crystal Ball for each new product created in Shopify.yaml create mode 100644 resources/Create an annotation in Crystal Ball for new Mailchimp campaigns.yaml create mode 100644 resources/markdown/Create an annotation in Crystal Ball for each new contact created in Salesforce_instructions.md create mode 100644 resources/markdown/Create an annotation in Crystal Ball for each new product created in Shopify_instructions.md create mode 100644 resources/markdown/Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md diff --git a/resources/Create an annotation in Crystal Ball for each new contact created in Salesforce.yaml b/resources/Create an annotation in Crystal Ball for each new contact created in Salesforce.yaml new file mode 100644 index 000000000..70254b6fd --- /dev/null +++ b/resources/Create an annotation in Crystal Ball for each new contact created in Salesforce.yaml @@ -0,0 +1,119 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: streaming-connector-scheduler + triggers: + SCHEDULE: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: scheduler + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: false + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: Contact + connector-type: salesforce + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: postApiV1Annotations_model + connector-type: crystalball + actions: + postApiV1Annotations: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + allow-empty-output: false + allow-truncation: true + name: Salesforce Retrieve contacts + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + limit: 10 + where: + CreatedDate: time + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + pagination-type: TOKEN + - for-each: + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + source: + expression: '$SalesforceRetrievecontacts ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrievecontacts + $ref: >- + #/node-output/Salesforce Retrieve + contacts/response/payload + - variable: SalesforceRetrievecontactsMetadata + $ref: '#/node-output/Salesforce Retrieve contacts/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + display-name: Salesforce Contact + assembly-2: + assembly: + execute: + - custom-action: + action: postApiV1Annotations + name: Crystal Ball Create annotation + target: + $ref: '#/integration/action-interfaces/action-interface-2' + map: + mappings: + - category: + template: salesforce {{$Foreachitem.Id}} + - description: + template: '{{$Foreachitem.Description}}' + - event_name: + template: contact_create {{$SalesforceRetrievecontacts.LastName}} + - url: + template: salesforce.com + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrievecontacts + $ref: >- + #/node-output/Salesforce Retrieve + contacts/response/payload + - variable: SalesforceRetrievecontactsMetadata + $ref: '#/node-output/Salesforce Retrieve contacts/response' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create an annotation in Crystal Ball for each new contact created in Salesforce +models: {} diff --git a/resources/Create an annotation in Crystal Ball for each new product created in Shopify.yaml b/resources/Create an annotation in Crystal Ball for each new product created in Shopify.yaml new file mode 100644 index 000000000..6643b6896 --- /dev/null +++ b/resources/Create an annotation in Crystal Ball for each new product created in Shopify.yaml @@ -0,0 +1,117 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: streaming-connector-scheduler + triggers: + SCHEDULE: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: scheduler + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: false + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: product + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: postApiV1Annotations_model + connector-type: crystalball + actions: + postApiV1Annotations: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + allow-empty-output: false + allow-truncation: true + name: Shopify Retrieve products + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + limit: 10 + where: + and: + - created_at_min: '{{$Trigger.lastEventTime}}' + - status: active + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + pagination-type: TOKEN + - for-each: + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + source: + expression: '$ShopifyRetrieveproducts ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + display-name: Shopify product + assembly-2: + assembly: + execute: + - custom-action: + action: postApiV1Annotations + name: Crystal Ball Create annotation + target: + $ref: '#/integration/action-interfaces/action-interface-2' + map: + mappings: + - category: + template: shopify {{$Foreachitem.id}} + - description: + template: '{{$Foreachitem.body_html}}' + - event_name: + template: product_create + - url: + template: shopify.com + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create an annotation in Crystal Ball for each new product created in Shopify +models: {} diff --git a/resources/Create an annotation in Crystal Ball for new Mailchimp campaigns.yaml b/resources/Create an annotation in Crystal Ball for new Mailchimp campaigns.yaml new file mode 100644 index 000000000..734081070 --- /dev/null +++ b/resources/Create an annotation in Crystal Ball for new Mailchimp campaigns.yaml @@ -0,0 +1,51 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: mailchimp + triggers: + CREATED: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: Campaigns + options: + list_id: 6fc8383307 + parentFilter: + list_id: 6fc8383307 + action-interfaces: + action-interface-1: + type: api-action + business-object: postApiV1Annotations_model + connector-type: crystalball + actions: + postApiV1Annotations: {} + assemblies: + assembly-1: + assembly: + execute: + - custom-action: + action: postApiV1Annotations + name: Crystal Ball Create annotation + target: + $ref: '#/integration/action-interfaces/action-interface-1' + map: + mappings: + - category: + template: '{{$Trigger.id}} created' + - description: + template: mailchimp + - event_name: + template: campaign + - url: + template: https://mailchimp.com/ + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create an annotation in Crystal Ball for new Mailchimp campaigns +models: {} diff --git a/resources/markdown/Create an annotation in Crystal Ball for each new contact created in Salesforce_instructions.md b/resources/markdown/Create an annotation in Crystal Ball for each new contact created in Salesforce_instructions.md new file mode 100644 index 000000000..8b308f6d6 --- /dev/null +++ b/resources/markdown/Create an annotation in Crystal Ball for each new contact created in Salesforce_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20annotation%20in%20Crystal%20Ball%20for%20each%20new%20contact%20created%20in%20Salesforce_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Salesforce](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-salesforce) + - [Crystal Ball](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-crystal-ball) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create an annotation in Crystal Ball for each new contact that is created in Salesforce. + diff --git a/resources/markdown/Create an annotation in Crystal Ball for each new product created in Shopify_instructions.md b/resources/markdown/Create an annotation in Crystal Ball for each new product created in Shopify_instructions.md new file mode 100644 index 000000000..644c29d7d --- /dev/null +++ b/resources/markdown/Create an annotation in Crystal Ball for each new product created in Shopify_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20annotation%20in%20Crystal%20Ball%20for%20each%20new%20product%20created%20in%20Shopify_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-shopify) + - [Crystal Ball](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-crystal-ball) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create an annotation in Crystal Ball for each new product that is created in Shopify. diff --git a/resources/markdown/Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md b/resources/markdown/Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md new file mode 100644 index 000000000..14964e399 --- /dev/null +++ b/resources/markdown/Create an annotation in Crystal Ball for new Mailchimp campaigns_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20annotation%20in%20Crystal%20Ball%20for%20new%20Mailchimp%20campaigns_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [MailChimp](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-mailchimp) + - [Crystal Ball](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-crystal-ball) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create an annotation in Crystal Ball for every new Mailchimp campaign. + diff --git a/resources/template-metadata.json b/resources/template-metadata.json index a103d4c14..6ceec0686 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -3526,6 +3526,33 @@ "targetApps": ["bamboohr", "apptiotargetprocess"], "tags": ["streaming-connector-scheduler", "bamboohr", "apptiotargetprocess"], "offerings": ["app connect professional"] + }, + { + "name": "Create an annotation in Crystal Ball for each new product created in Shopify", + "description": "Use this template to create an annotation in Crystal Ball for each new product created in Shopify.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["crystalball", "shopify"], + "tags": ["streaming-connector-scheduler", "crystalball", "shopify", "foreach"], + "offerings": ["app connect professional"] + }, + { + "name": "Create an annotation in Crystal Ball for new Mailchimp campaigns", + "description": "Use this template to create an annotation in Crystal Ball for any new Mailchimp campaigns.", + "summary": "MailChimp to Crystal Ball", + "sourceApp": "mailchimp", + "targetApps": ["crystalball"], + "tags": ["crystalball", "mailchimp"], + "offerings": ["app connect professional"] + }, + { + "name": "Create an annotation in Crystal Ball for each new contact created in Salesforce", + "description": "Use this template to create an annotation in Crystal Ball for each new contact created in Salesforce.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["salesforce", "crystalball"], + "tags": ["streaming-connector-scheduler", "crystalball", "salesforce", "foreach"], + "offerings": ["app connect professional"] } ] -} \ No newline at end of file +} From 622ddd5071adf0c290da6f09f99e9db818b34921 Mon Sep 17 00:00:00 2001 From: Matt Chapman Date: Thu, 4 Jul 2024 10:35:04 +0100 Subject: [PATCH 06/11] avoid non-ascii characters in template names (#479) Co-authored-by: Matt Chapman --- ... not have a response from the user for more than 3 days.yaml | 0 ... response from the user for more than 3 days_instructions.md | 0 resources/template-metadata.json | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) rename "resources/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days.yaml" => resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml (100%) rename "resources/markdown/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days_instructions.md" => resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md (100%) diff --git "a/resources/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days.yaml" b/resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml similarity index 100% rename from "resources/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days.yaml" rename to resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml diff --git "a/resources/markdown/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days_instructions.md" b/resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md similarity index 100% rename from "resources/markdown/Update a ticket status in Zendesk Service for tickets that didn\342\200\231t have a response from the user for more than 3 days_instructions.md" rename to resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md diff --git a/resources/template-metadata.json b/resources/template-metadata.json index 6ceec0686..a2cd781a1 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -2511,7 +2511,7 @@ "offerings": ["app connect professional"] }, { - "name": "Update a ticket status in Zendesk Service for tickets that didn’t have a response from the user for more than 3 days", + "name": "Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days", "description": "Use this template to update the ticket status to closed in Zendesk Service for tickets that didn’t have a response from the user for more than 3 days. A Slack message is posted on the intended channel to notify the recipients that the ticket is closed.", "summary": "Scheduler to 2 applications", "sourceApp": "streaming-connector-scheduler", From 8639d6146b944726efabc8f7a9267b6ab2d2ed29 Mon Sep 17 00:00:00 2001 From: Pkatiyar30 <102517223+Pkatiyar30@users.noreply.github.com> Date: Thu, 4 Jul 2024 11:03:25 +0000 Subject: [PATCH 07/11] usecase ZohoCRM (#477) * Add files via upload * Add files via upload * Update template-metadata.json * Update template-metadata.json * Update template-metadata.json corrections --------- Co-authored-by: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Co-authored-by: Deepak Ayilliath <87267785+Deepak-Ayilliath@users.noreply.github.com> --- ...ert Insightly leads to Zoho CRM leads.yaml | 262 ++++++++++++++++++ ... CRM for each new customer in Shopify.yaml | 214 ++++++++++++++ ... for each new paid customer in Square.yaml | 173 ++++++++++++ ...oho CRM for each new Wufoo form entry.yaml | 107 +++++++ ...ly leads to Zoho CRM leads_instructions.md | 10 + ...ch new customer in Shopify_instructions.md | 10 + ...ew paid customer in Square_instructions.md | 10 + ... each new Wufoo form entry_instructions.md | 10 + resources/template-metadata.json | 38 ++- 9 files changed, 833 insertions(+), 1 deletion(-) create mode 100644 resources/Convert Insightly leads to Zoho CRM leads.yaml create mode 100644 resources/Create a contact in Zoho CRM for each new customer in Shopify.yaml create mode 100644 resources/Create a deal in Zoho CRM for each new paid customer in Square.yaml create mode 100644 resources/Create a lead in Zoho CRM for each new Wufoo form entry.yaml create mode 100644 resources/markdown/Convert Insightly leads to Zoho CRM leads_instructions.md create mode 100644 resources/markdown/Create a contact in Zoho CRM for each new customer in Shopify_instructions.md create mode 100644 resources/markdown/Create a deal in Zoho CRM for each new paid customer in Square_instructions.md create mode 100644 resources/markdown/Create a lead in Zoho CRM for each new Wufoo form entry_instructions.md diff --git a/resources/Convert Insightly leads to Zoho CRM leads.yaml b/resources/Convert Insightly leads to Zoho CRM leads.yaml new file mode 100644 index 000000000..01046e092 --- /dev/null +++ b/resources/Convert Insightly leads to Zoho CRM leads.yaml @@ -0,0 +1,262 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + triggers: + CREATED: + input-context: + data: Lead + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: {} + connector-type: insightly + action-interfaces: + action-interface-1: + type: api-action + business-object: getLeadsSearch_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: getUsers_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: postLeads_model + connector-type: zohocrm + actions: + postLeads: {} + action-interface-4: + type: api-action + business-object: getLeadsByRecordIdConversionOptions_model + connector-type: zohocrm + actions: + getLeadsByRecordIdConversionOptions: {} + action-interface-5: + type: api-action + business-object: postLeads528450000000311120ActionsConvert_model + connector-type: zohocrm + actions: + postLeads528450000000311120ActionsConvert: {} + action-interface-6: + type: api-action + business-object: postLeads528450000000311120ActionsConvert_model + connector-type: zohocrm + actions: + postLeads528450000000311120ActionsConvert: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Zoho CRM Retrieve leads + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + Email: '{{$Trigger.EMAIL}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If + input: + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoCRMRetrieveleadsMetadata."status-code"}}': '204' + execute: + - retrieve-action: + name: Zoho CRM Retrieve users + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + ___type: AdminUsers + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoCRMRetrieveleads + $ref: >- + #/node-output/Zoho CRM Retrieve + leads/response/payload + - variable: ZohoCRMRetrieveleadsMetadata + $ref: '#/node-output/Zoho CRM Retrieve leads/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: false + - custom-action: + name: Zoho CRM Create lead + target: + $ref: '#/integration/action-interfaces/action-interface-3' + action: postLeads + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - City: + template: '{{$Trigger.ADDRESS_CITY}}' + - Company: + template: '{{$Trigger.ORGANISATION_NAME}}' + - Country: + template: '{{$Trigger.ADDRESS_COUNTRY}}' + - Email: + template: '{{$Trigger.EMAIL}}' + - Fax: + template: '{{$Trigger.FAX}}' + - First_Name: + template: '{{$Trigger.FIRST_NAME}}' + - Industry: + template: '{{$Trigger.INDUSTRY}}' + - Last_Name: + template: '{{$Trigger.LAST_NAME}}' + - Lead_Source: + template: '{{$Trigger.LEAD_SOURCE_ID}}' + - Lead_Status: + template: Attempted to Contact + - Mobile: + template: '{{$Trigger.MOBILE}}' + - No_of_Employees: + expression: '$Trigger.EMPLOYEE_COUNT ' + - Owner: + mappings: + - full_name: + template: '{{$ZohoCRMRetrieveusers[0].full_name}}' + - id: + template: '{{$ZohoCRMRetrieveusers[0].id}}' + - Phone: + template: '{{$Trigger.PHONE}}' + - Salutation: + template: '{{$Trigger.SALUTATION}}' + - State: + template: '{{$Trigger.ADDRESS_STATE}}' + - Street: + template: '{{$Trigger.ADDRESS_STREET}}' + - Website: + template: '{{$Trigger.WEBSITE}}' + - Zip_Code: + template: '{{$Trigger.ADDRESS_POSTCODE}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: flowDetails + $ref: '#/flowDetails' + - custom-action: + name: Zoho CRM Retrieve lead conversion options + target: + $ref: '#/integration/action-interfaces/action-interface-4' + action: getLeadsByRecordIdConversionOptions + map: + mappings: + - record_id: + template: '{{$ZohoCRMCreatelead._data_[0].details.id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: flowDetails + $ref: '#/flowDetails' + - if: + name: If 2 + input: + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + and: + - '{{$ZohoCRMRetrieveleadconversionoptions}}': + neq: '' + - '{{$ZohoCRMRetrieveleadconversionoptions.__conversion_options}}': + neq: '' + hashKey: object:22 + - '{{$ZohoCRMRetrieveleadconversionoptions.__conversion_options.Contacts}}': + neq: '' + hashKey: object:536 + execute: + - custom-action: + name: Zoho CRM Convert lead + target: + $ref: >- + #/integration/action-interfaces/action-interface-5 + action: postLeads528450000000311120ActionsConvert + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - Accounts: + mappings: + - id: + template: >- + {{$ZohoCRMRetrieveleadconversionoptions.__conversion_options.Accounts[0].id}} + - Contacts: + mappings: + - id: + template: >- + {{$ZohoCRMRetrieveleadconversionoptions.__conversion_options.Contacts[0].id}} + - assign_to: + mappings: + - full_name: + template: >- + {{$ZohoCRMRetrieveleadconversionoptions.__conversion_options.Contacts[0].Full_Name}} + - id: + template: >- + {{$ZohoCRMRetrieveleadconversionoptions.__conversion_options.Contacts[0].id}} + - lead_id: + template: >- + {{$ZohoCRMCreatelead._data_[0].details.id}} + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: + - custom-action: + name: Zoho CRM Convert lead 2 + target: + $ref: >- + #/integration/action-interfaces/action-interface-6 + action: postLeads528450000000311120ActionsConvert + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - assign_to: + mappings: + - full_name: + template: ' {{$ZohoCRMRetrieveusers[0].full_name}}' + - id: + template: '{{$ZohoCRMRetrieveusers[0].id}}' + - lead_id: + template: >- + {{$ZohoCRMCreatelead._data_[0].details.id}} + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: flowDetails + $ref: '#/flowDetails' + output-schema: {} + else: + execute: [] + output-schema: {} + name: Convert Insightly leads to Zoho CRM leads +models: {} diff --git a/resources/Create a contact in Zoho CRM for each new customer in Shopify.yaml b/resources/Create a contact in Zoho CRM for each new customer in Shopify.yaml new file mode 100644 index 000000000..799354fd2 --- /dev/null +++ b/resources/Create a contact in Zoho CRM for each new customer in Shopify.yaml @@ -0,0 +1,214 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + connector-type: streaming-connector-scheduler + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: true + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: customer + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: getContactsSearch_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: getUsers_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-4: + type: api-action + business-object: postContacts_model + connector-type: zohocrm + actions: + postContacts: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve customers + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + created_at_min: '{{$Trigger.lastEventTime}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - for-each: + name: For each 2 + assembly: + $ref: '#/integration/assemblies/assembly-3' + source: + expression: '$ShopifyRetrievecustomers ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Shopify customer + assembly-3: + assembly: + execute: + - retrieve-action: + name: Zoho CRM Retrieve contacts + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + Email: '{{$Foreach2item.email}}' + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SlackSendmessage4 + $ref: >- + #/block/For each 2/node-output/Slack Send message + 4/response/payload + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: SlackSendmessage + $ref: '#/node-output/Slack Send message/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoCRMRetrievecontactsMetadata."status-code"}}': '204' + execute: + - retrieve-action: + name: Zoho CRM Retrieve users + target: + $ref: '#/integration/action-interfaces/action-interface-3' + filter: + where: + ___type: AdminUsers + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoCRMRetrievecontacts + $ref: >- + #/block/For each 2/node-output/Zoho CRM Retrieve + contacts/response/payload + - variable: ZohoCRMRetrievecontactsMetadata + $ref: >- + #/block/For each 2/node-output/Zoho CRM Retrieve + contacts/response + - variable: SlackSendmessage2 + $ref: >- + #/block/For each 2/node-output/Slack Send + message 2/response/payload + - variable: ShopifyRetrievecustomers + $ref: >- + #/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/node-output/Shopify Retrieve + customers/response + - variable: SlackSendmessage + $ref: >- + #/node-output/Slack Send + message/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - custom-action: + name: Zoho CRM Create contact + target: + $ref: '#/integration/action-interfaces/action-interface-4' + action: postContacts + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - First_Name: + template: '{{$Foreach2item.first_name}}' + - Last_Name: + template: '{{$Foreach2item.last_name}}' + - Lead_Source: + template: Online Store + - Owner: + mappings: + - full_name: + template: '{{$ZohoCRMRetrieveusers[0].full_name}}' + - id: + template: '{{$ZohoCRMRetrieveusers[0].id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Create a contact in Zoho CRM for each new customer in Shopify +models: {} diff --git a/resources/Create a deal in Zoho CRM for each new paid customer in Square.yaml b/resources/Create a deal in Zoho CRM for each new paid customer in Square.yaml new file mode 100644 index 000000000..70d59cd3f --- /dev/null +++ b/resources/Create a deal in Zoho CRM for each new paid customer in Square.yaml @@ -0,0 +1,173 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: true + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + connector-type: streaming-connector-scheduler + action-interfaces: + action-interface-1: + type: api-action + business-object: payments + connector-type: square + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: customers + connector-type: square + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: getUsers_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-4: + type: api-action + business-object: postDeals_model + connector-type: zohocrm + actions: + postDeals: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Square Retrieve payments + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$SquareRetrievepayments ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Square payments + assembly-2: + assembly: + execute: + - retrieve-action: + name: Square Retrieve customers + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + customer_id: '{{$Foreachitem.customer_id}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SquareRetrievepayments + $ref: '#/node-output/Square Retrieve payments/response/payload' + - variable: SquareRetrievepaymentsMetadata + $ref: '#/node-output/Square Retrieve payments/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 1 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - retrieve-action: + name: Zoho CRM Retrieve users + target: + $ref: '#/integration/action-interfaces/action-interface-3' + filter: + where: + ___type: AdminUsers + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SquareRetrievecustomers + $ref: >- + #/block/For each/node-output/Square Retrieve + customers/response/payload + - variable: SquareRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Square Retrieve + customers/response + - variable: SquareRetrievepayments + $ref: '#/node-output/Square Retrieve payments/response/payload' + - variable: SquareRetrievepaymentsMetadata + $ref: '#/node-output/Square Retrieve payments/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: false + - custom-action: + name: Zoho CRM Create deal + target: + $ref: '#/integration/action-interfaces/action-interface-4' + action: postDeals + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - Amount: + expression: '$Foreachitem.amount_money.amount ' + - Closing_Date: + template: '2024-05-23' + - Deal_Name: + template: '{{$SquareRetrievecustomers.given_name}}' + - Owner: + mappings: + - full_name: + template: '{{$ZohoCRMRetrieveusers[0].full_name}}' + - id: + template: '{{$ZohoCRMRetrieveusers[0].id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create a deal in Zoho CRM for each new paid customer in Square +models: {} diff --git a/resources/Create a lead in Zoho CRM for each new Wufoo form entry.yaml b/resources/Create a lead in Zoho CRM for each new Wufoo form entry.yaml new file mode 100644 index 000000000..15cd7f6ac --- /dev/null +++ b/resources/Create a lead in Zoho CRM for each new Wufoo form entry.yaml @@ -0,0 +1,107 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + triggers: + CREATED: + input-context: + data: FormEntry + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + Hash: z1j6mk810bcn8c6 + parentFilter: + Hash: z1j6mk810bcn8c6 + connector-type: wufoo + action-interfaces: + action-interface-1: + type: api-action + business-object: getLeadsSearch_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: getUsers_model + connector-type: zohocrm + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: postLeads_model + connector-type: zohocrm + actions: + postLeads: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Zoho CRM Retrieve leads + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + Email: '{{$Trigger.Field4}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If + input: + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoCRMRetrieveleadsMetadata."status-code"}}': '204' + execute: + - retrieve-action: + name: Zoho CRM Retrieve users + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + limit: 10 + allow-truncation: true + pagination-type: SKIP_LIMIT + allow-empty-output: true + - custom-action: + name: Zoho CRM Create lead + target: + $ref: '#/integration/action-interfaces/action-interface-3' + action: postLeads + map: + mappings: + - data: + foreach: + input: '[{}]' + iterator: dataItem + mappings: + - Email: + template: '{{$Trigger.Field4}}' + - First_Name: + template: '{{$Trigger.Field1}}' + - Last_Name: + template: '{{$Trigger.Field2}}' + - Owner: + mappings: + - full_name: + template: '{{$ZohoCRMRetrieveusers[0].full_name}}' + - id: + template: '{{$ZohoCRMRetrieveusers[0].id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Create a lead in Zoho CRM for each new Wufoo form entry +models: {} diff --git a/resources/markdown/Convert Insightly leads to Zoho CRM leads_instructions.md b/resources/markdown/Convert Insightly leads to Zoho CRM leads_instructions.md new file mode 100644 index 000000000..b0c3f2e36 --- /dev/null +++ b/resources/markdown/Convert Insightly leads to Zoho CRM leads_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Convert%20Insightly%20leads%20to%20Zoho%20CRM%20leads_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Insightly](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-insightly) + - [Zoho CRM](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-zoho-crm) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to convert Insightly leads to Zoho CRM leads. diff --git a/resources/markdown/Create a contact in Zoho CRM for each new customer in Shopify_instructions.md b/resources/markdown/Create a contact in Zoho CRM for each new customer in Shopify_instructions.md new file mode 100644 index 000000000..ff45d8450 --- /dev/null +++ b/resources/markdown/Create a contact in Zoho CRM for each new customer in Shopify_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20contact%20in%20Zoho%20CRM%20for%20each%20new%20customer%20in%20Shopify_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-wufoo) + - [Zoho CRM](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-zoho-crm) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create a contact in Zoho CRM for each new customer in Shopify. diff --git a/resources/markdown/Create a deal in Zoho CRM for each new paid customer in Square_instructions.md b/resources/markdown/Create a deal in Zoho CRM for each new paid customer in Square_instructions.md new file mode 100644 index 000000000..791466a46 --- /dev/null +++ b/resources/markdown/Create a deal in Zoho CRM for each new paid customer in Square_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20deal%20in%20Zoho%20CRM%20for%20each%20new%20paid%20customer%20in%20Square_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Square](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-square) + - [Zoho CRM](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-zoho-crm) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create a deal in Zoho CRM for each new paid customer in Square. diff --git a/resources/markdown/Create a lead in Zoho CRM for each new Wufoo form entry_instructions.md b/resources/markdown/Create a lead in Zoho CRM for each new Wufoo form entry_instructions.md new file mode 100644 index 000000000..f2456fcc1 --- /dev/null +++ b/resources/markdown/Create a lead in Zoho CRM for each new Wufoo form entry_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20lead%20in%20Zoho%20CRM%20for%20each%20new%20Wufoo%20form%20entry_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Wufoo](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-wufoo) + - [Zoho CRM](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-zoho-crm) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create a lead in Zoho CRM for each new Wufoo form entry. diff --git a/resources/template-metadata.json b/resources/template-metadata.json index a2cd781a1..e7eb9cff3 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -3553,6 +3553,42 @@ "targetApps": ["salesforce", "crystalball"], "tags": ["streaming-connector-scheduler", "crystalball", "salesforce", "foreach"], "offerings": ["app connect professional"] - } + }, +{ + "name": "Create a contact in Zoho CRM for each new customer in Shopify", + "description": "Use this template to create a contact in Zoho CRM for each new customer in Shopify.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["shopify", "zohocrm"], + "tags": ["streaming-connector-scheduler", "shopify", "zohocrm", "foreach", "if"], + "offerings": ["app connect professional"] +}, +{ + "name": "Convert Insightly leads to Zoho CRM leads", + "description": "Use this template to convert Insightly leads to Zoho CRM leads.", + "summary": "Insightly to Zoho CRM", + "sourceApp": "insightly", + "targetApps": ["zohocrm"], + "tags": ["insightly", "zohocrm", "if"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create a deal in Zoho CRM for each new paid customer in Square", + "description": "Use this template to create a deal in Zoho CRM for each new paid customer in Square.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["square", "zohocrm"], + "tags": ["streaming-connector-scheduler", "square", "zohocrm", "foreach"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create a lead in Zoho CRM for each new Wufoo form entry", + "description": "Use this template to create a lead in Zoho CRM for each new Wufoo form entry.", + "summary": "Wufoo to Zoho CRM", + "sourceApp": "wufoo", + "targetApps": ["zohocrm"], + "tags": ["wufoo", "zohocrm", "if"], + "offerings": ["app connect professional"] +} ] } From 2e6b5a2394542dde00692facdbdbd35e0b412567 Mon Sep 17 00:00:00 2001 From: Matt Chapman Date: Fri, 5 Jul 2024 13:41:23 +0100 Subject: [PATCH 08/11] need matching name (#482) Co-authored-by: Matt Chapman --- ... not have a response from the user for more than 3 days.yaml | 2 +- ... response from the user for more than 3 days_instructions.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml b/resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml index 8ea20c484..500c6eac9 100644 --- a/resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml +++ b/resources/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days.yaml @@ -338,5 +338,5 @@ integration: - variable: flowDetails $ref: '#/flowDetails' output-schema: {} - name: Update a ticket status in Zendesk Service for tickets that didn’t have a response from the user for more than 3 days + name: Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days models: {} diff --git a/resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md b/resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md index e27378961..dd2bccdf4 100644 --- a/resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md +++ b/resources/markdown/Update a ticket status in Zendesk Service for tickets that did not have a response from the user for more than 3 days_instructions.md @@ -1,4 +1,4 @@ -To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Update%20a%20ticket%20status%20in%20Zendesk%20Service%20for%20tickets%20that%20didn’t%20have%20a%20response%20from%20the%20user%20for%20more%20than%203%20days_instructions.md) (opens in a new window). +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Update%20a%20ticket%20status%20in%20Zendesk%20Service%20for%20tickets%20that%20did%20not%20have%20a%20response%20from%20the%20user%20for%20more%20than%203%20days_instructions.md) (opens in a new window). 1. Click **Create flow** to start using the template. 2. Connect to the following accounts by using your credentials: From bbd6c1d5380923877cd1df968309dafbb3d32957 Mon Sep 17 00:00:00 2001 From: neenapk Date: Mon, 8 Jul 2024 22:17:54 +0530 Subject: [PATCH 09/11] Updated usecases for IBM watsonx.ai (#470) * Added templates files * Updated template-metadata.json * Create Summarise open leads for a Salesforce user using IBM watsonx.ai_instructions.md * Create SMS notification about upcoming offers for Shopify customers using IBM watsonx.ai_instructions.md * Update Summarise open leads for a Salesforce user using IBM watsonx.ai_instructions.md * added all changes * corrected connector action name * Corrected typo in yaml * Corrections --------- Co-authored-by: Neena P K Co-authored-by: Deepak Ayilliath Co-authored-by: Deepak Ayilliath <87267785+Deepak-Ayilliath@users.noreply.github.com> --- ...tomers using text from IBM watsonx ai.yaml | 241 ++++++++++++++ ...sing IBM watsonx ai and send an email.yaml | 302 ++++++++++++++++++ ...g text from IBM watsonx ai_instructions.md | 11 + ...tsonx ai and send an email_instructions.md | 11 + resources/template-metadata.json | 20 +- 5 files changed, 584 insertions(+), 1 deletion(-) create mode 100644 resources/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai.yaml create mode 100644 resources/Summarize the open leads from Salesforce using IBM watsonx ai and send an email.yaml create mode 100644 resources/markdown/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai_instructions.md create mode 100644 resources/markdown/Summarize the open leads from Salesforce using IBM watsonx ai and send an email_instructions.md diff --git a/resources/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai.yaml b/resources/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai.yaml new file mode 100644 index 000000000..c8174b39e --- /dev/null +++ b/resources/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai.yaml @@ -0,0 +1,241 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + connector-type: streaming-connector-scheduler + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: true + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-2: + type: api-action + business-object: postListsByContactListIdContacts_model + connector-type: clicksend + actions: + postListsByContactListIdContacts: {} + action-interface-3: + type: api-action + business-object: postSmsCampaignsSend_model + connector-type: clicksend + actions: + postSmsCampaignsSend: {} + action-interface-5: + type: api-action + business-object: customer + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-1: + type: api-action + business-object: postLists_model + connector-type: clicksend + actions: + postLists: {} + action-interface-4: + type: api-action + business-object: postMlV1TextGeneration_model + connector-type: ibmwatsonxai + actions: + postMlV1TextGeneration: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve customers + target: + $ref: '#/integration/action-interfaces/action-interface-5' + filter: + limit: 1 + where: + first_name: ABCDD + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyCreatecustomer + $ref: '#/node-output/Shopify Create customer/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: false + - custom-action: + name: ClickSend Create contact list + target: + $ref: '#/integration/action-interfaces/action-interface-1' + action: postLists + map: + mappings: + - list_name: + template: Upcoming Sale {{$Trigger.lastEventTime}} + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: flowDetails + $ref: '#/flowDetails' + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$ShopifyRetrievecustomers ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: ClickSendCreatecontactlist + $ref: >- + #/node-output/ClickSend Create contact + list/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + mode: parallel + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Square Phone number + - custom-action: + action: postMlV1TextGeneration + name: IBM watsonx.ai Generate text + target: + $ref: '#/integration/action-interfaces/action-interface-4' + map: + mappings: + - input: + template: >- + Create an irresistible and fun SMS message offering a + 15% discount on all products. Use the code 'PERSONAL10' + to unlock the deal. Make it exciting and use marketing + startegies to maximize customer excitement!,complete the + sms text. + - model_id: + template: meta-llama/llama-2-70b-chat + - parameters: + mappings: + - max_new_tokens: + expression: '300' + - time_limit: + expression: '10000' + - project_id: + template: 5a745c74-c93f-4cbd-ba70-bf0a93633fbd + - version: + template: '2024-03-14' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: ClickSendCreatecontactlist + $ref: >- + #/node-output/ClickSend Create contact + list/response/payload + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - custom-action: + name: ClickSend Create SMS campaign + target: + $ref: '#/integration/action-interfaces/action-interface-3' + action: postSmsCampaignsSend + map: + mappings: + - body: + template: '{{$IBMWatsonXAIGenerateText.results.generated_text}}' + - from: + template: '+61411111111' + - list_id: + template: '{{$ClickSendCreatecontactlist.list_id}}' + - name: + template: Sale Campaign + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: ClickSendCreatecontactlist + $ref: >- + #/node-output/ClickSend Create contact + list/response/payload + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: IBMWatsonXAIGenerateText + $ref: >- + #/node-output/IBM WatsonX.AI Generate + Text/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + assembly-2: + assembly: + execute: + - custom-action: + name: ClickSend Create contact in contact list + target: + $ref: '#/integration/action-interfaces/action-interface-2' + action: postListsByContactListIdContacts + map: + mappings: + - address_line_1: + template: address line 1 + - contactListId: + template: '{{$ClickSendCreatecontactlist.list_id}}' + - email: + template: '{{$ShopifyRetrievecustomers.email}}' + - first_name: + template: '{{$ShopifyRetrievecustomers.first_name}}' + - phone_number: + template: '{{$ShopifyRetrievecustomers.phone}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: '#/node-output/Shopify Retrieve customers/response/payload' + - variable: ShopifyRetrievecustomersMetadata + $ref: '#/node-output/Shopify Retrieve customers/response' + - variable: ClickSendCreatecontactlist + $ref: >- + #/node-output/ClickSend Create contact + list/response/payload + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai +models: {} diff --git a/resources/Summarize the open leads from Salesforce using IBM watsonx ai and send an email.yaml b/resources/Summarize the open leads from Salesforce using IBM watsonx ai and send an email.yaml new file mode 100644 index 000000000..52d876920 --- /dev/null +++ b/resources/Summarize the open leads from Salesforce using IBM watsonx ai and send an email.yaml @@ -0,0 +1,302 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: streaming-connector-scheduler + triggers: + SCHEDULE: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: scheduler + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 5 + runOnceOncheck: true + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-2: + type: api-action + business-object: Lead + connector-type: salesforce + actions: + RETRIEVEALL: {} + action-interface-1: + type: api-action + business-object: postCustomSummary_model + connector-type: ibmwatsonxai + actions: + postCustomSummary: {} + action-interface-4: + type: api-action + business-object: postMlV1TextGeneration_model + connector-type: ibmwatsonxai + actions: + postMlV1TextGeneration: {} + action-interface-5: + type: api-action + business-object: mail + connector-type: gmail + actions: + CREATE: {} + action-interface-3: + type: api-action + business-object: User + connector-type: salesforce + actions: + RETRIEVEALL: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + allow-empty-output: false + allow-truncation: true + name: Salesforce Retrieve users + target: + $ref: '#/integration/action-interfaces/action-interface-3' + filter: + limit: 10 + pagination-type: TOKEN + - if: + branch: + - condition: + '{{$SalesforceRetrieveusersMetadata."status-code"}}': '200' + execute: + - for-each: + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + source: + expression: '$SalesforceRetrieveusers ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: >- + #/node-output/Salesforce Retrieve + users/response/payload + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + name: For each 2 + assembly: + $ref: '#/integration/assemblies/assembly-4' + display-name: Salesforce User + else: + execute: [] + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: '#/node-output/Salesforce Retrieve users/response/payload' + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: flowDetails + $ref: '#/flowDetails' + assembly-2: + assembly: + execute: + - custom-action: + action: postCustomEmail + name: IBM watsonx.ai Generate email template + target: + $ref: '#/integration/action-interfaces/action-interface-1' + map: + mappings: + - input: + template: 'Generate an email without subject to ' + - model_id: + template: ibm/granite-13b-chat-v2 + - version: + template: '2024-03-14' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveleads + $ref: '#/node-output/Salesforce Retrieve leads/response/payload' + - variable: SalesforceRetrieveleadsMetadata + $ref: '#/node-output/Salesforce Retrieve leads/response' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + assembly-4: + assembly: + execute: + - retrieve-action: + allow-empty-output: true + allow-truncation: true + name: Salesforce Retrieve leads + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + limit: 10 + where: + and: + - IsUnreadByOwner: 'true' + - Status: Open - Not Contacted + - OwnerId: '{{$Foreach2item.Id}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: '#/node-output/Salesforce Retrieve users/response/payload' + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + pagination-type: TOKEN + - if: + branch: + - condition: + '{{$SalesforceRetrieveleadsMetadata."status-code"}}': '200' + execute: + - custom-action: + action: postMlV1TextGeneration + name: IBM watsonx.ai Generate text + target: + $ref: '#/integration/action-interfaces/action-interface-4' + map: + mappings: + - input: + template: >- + Summarise the given open uncontacted list of + lead records: + {{$SalesforceRetrieveleads.{'Name':Name, + 'Title': Title, 'Company': Company, + 'Email':Email, 'Lead Creation Date': + CreatedDate} }} for {{$Foreach2item.Name}}. + For context the list provided above contains + details of customers that need to be reached + out, and {{$Foreach2item.Name}} is the owner + and needs to reach out, so write a summary for + {{$Foreach2item.Name}} so they can get started + asap. Consider only the data and fields that + are mentioned in the list and display them + clearly in a numbered list, show the 'lead + creation date' in a user readable format + (DD/MM/YYYY) and segregate the entries per + lead record, no salutations/addressing at the + end and no hints of previous responses and + prompts. + - model_id: + template: ibm/granite-13b-chat-v2 + - parameters: + mappings: + - max_new_tokens: + expression: '800' + - min_new_tokens: + expression: '200' + - time_limit: + expression: '17000' + - project_id: + template: 5a745c74-c93f-4cbd-ba70-bf0a93633fbd + - version: + template: '2024-03-14' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: >- + #/node-output/Salesforce Retrieve + users/response/payload + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: SalesforceRetrieveleads + $ref: >- + #/block/For each 2/node-output/Salesforce + Retrieve leads/response/payload + - variable: SalesforceRetrieveleadsMetadata + $ref: >- + #/block/For each 2/node-output/Salesforce + Retrieve leads/response + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Gmail Send email + target: + $ref: '#/integration/action-interfaces/action-interface-5' + map: + mappings: + - Subject: + template: Summary of Leads for {{$Foreach2item.Name}} + - To: + template: '{{$Foreach2item.Email}}' + - richTextBody: + mappings: + - content: + template: >- + {{$IBMWatsonXAIGenerateText.results.generated_text}} + - contentType: + template: text/plain + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: >- + #/node-output/Salesforce Retrieve + users/response/payload + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: SalesforceRetrieveleads + $ref: >- + #/block/For each 2/node-output/Salesforce + Retrieve leads/response/payload + - variable: SalesforceRetrieveleadsMetadata + $ref: >- + #/block/For each 2/node-output/Salesforce + Retrieve leads/response + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + name: If 2 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SalesforceRetrieveusers + $ref: '#/node-output/Salesforce Retrieve users/response/payload' + - variable: SalesforceRetrieveusersMetadata + $ref: '#/node-output/Salesforce Retrieve users/response' + - variable: SalesforceRetrieveleads + $ref: >- + #/block/For each 2/node-output/Salesforce Retrieve + leads/response/payload + - variable: SalesforceRetrieveleadsMetadata + $ref: >- + #/block/For each 2/node-output/Salesforce Retrieve + leads/response + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: >- + Summarize the open leads from Salesforce using IBM watsonx ai and send an email +models: {} diff --git a/resources/markdown/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai_instructions.md b/resources/markdown/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai_instructions.md new file mode 100644 index 000000000..ec596ba0e --- /dev/null +++ b/resources/markdown/Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Send%20an%20SMS%20notification%20about%20upcoming%20offers%20for%20Shopify%20customers%20using%20text%20from%20IBM%20watsonx%20ai_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://www.ibm.com/docs/en/app-connect/saas?topic=apps-shopify) + - [IBM watsonx.ai](https://www.ibm.com/docs/en/app-connect/saas?topic=apps-watsonxai) + - [ClickSend]([https://www.ibm.com/docs/en/app-connect/saas?topic=apps-clicksend) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to send an SMS notification about upcoming offers for Shopify customers using text generated from IBM watsonx.ai. diff --git a/resources/markdown/Summarize the open leads from Salesforce using IBM watsonx ai and send an email_instructions.md b/resources/markdown/Summarize the open leads from Salesforce using IBM watsonx ai and send an email_instructions.md new file mode 100644 index 000000000..8587d4f04 --- /dev/null +++ b/resources/markdown/Summarize the open leads from Salesforce using IBM watsonx ai and send an email_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Summarize%20the%20open%20leads%20from%20Salesforce%20using%20IBM%20watsonx%20ai%20and%20send%20an%20email_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Salesforce](https://www.ibm.com/docs/en/app-connect/saas?topic=apps-hunter) + - [IBM watsonx.ai](https://www.ibm.com/docs/en/app-connect/saas?topic=apps-watsonxai) + - [Gmail](https://www.ibm.com/docs/en/app-connect/saas?topic=apps-gmail) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to Summarize the open leads from Salesforce using IBM watsonx.ai and send an email. diff --git a/resources/template-metadata.json b/resources/template-metadata.json index e7eb9cff3..745f6a876 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -3589,6 +3589,24 @@ "targetApps": ["zohocrm"], "tags": ["wufoo", "zohocrm", "if"], "offerings": ["app connect professional"] -} + }, +{ + "name": "Summarize the open leads from Salesforce using IBM watsonx ai and send an email", + "description": "Use this template to send a scheduled mail to a salesforce user with a summary of their open, not contacted, and unread leads using IBM watsonx.ai.", + "summary": "Scheduler to 3 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["salesforce", "ibmwatsonxai", "gmail"], + "tags": ["streaming-connector-scheduler", "salesforce", "ibmwatsonxai", "gmail", "if", "foreach"], + "offerings": ["app connect professional"] + }, + { + "name": "Send an SMS notification about upcoming offers for Shopify customers using text from IBM watsonx ai", + "description": "Use this template to craft compelling and captivating messages using IBM watsonx.ai to notify Shopify customers about upcoming offers.", + "summary": "Scheduler to 3 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["shopify", "clicksend", "ibmwatsonxai"], + "tags": ["streaming-connector-scheduler", "shopify", "clicksend", "ibmwatsonxai", "foreach"], + "offerings": ["app connect professional"] + } ] } From 284c132b3745877e4069d94c132b0db3cd8b6462 Mon Sep 17 00:00:00 2001 From: Pkatiyar30 <102517223+Pkatiyar30@users.noreply.github.com> Date: Thu, 18 Jul 2024 11:54:20 +0000 Subject: [PATCH 10/11] usecase zoho books (#484) * Add files via upload * Add files via upload * Update template-metadata.json * Update and rename Create a quote in Zoho Books for each new Shopify order and send the quote.yaml to Create a quote in Zoho Books for each new Shopify order and send the quote through Slack.yaml * Rename Create a quote in Zoho Books for each new Shopify order and send the quote_instructions.md to Create a quote in Zoho Books for each new Shopify order and send the quote through Slack_instructions.md * Update and rename Create an invoice in Zoho Books for each new Shopify order and send the invoice.yaml to Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.yaml * Rename Create an invoice in Zoho Books for each new Shopify order and send the invoice_instructions.md to Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail_instructions.md * Update template-metadata.json * Update Create an expense in Zoho Books for each new payment in Square.yaml * Update template-metadata.json * Corrections --------- Co-authored-by: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Co-authored-by: Deepak Ayilliath Co-authored-by: Deepak Ayilliath <87267785+Deepak-Ayilliath@users.noreply.github.com> --- ...rder and send the quote through Slack.yaml | 191 +++++ ... Books for each new payment in Square.yaml | 176 ++++ ...er and send the invoice through Gmail.yaml | 801 ++++++++++++++++++ ...ho Books for each new Shopify product.yaml | 303 +++++++ ...nd the quote through Slack_instructions.md | 11 + ...each new payment in Square_instructions.md | 10 + ... the invoice through Gmail_instructions.md | 11 + ...r each new Shopify product_instructions.md | 10 + resources/template-metadata.json | 40 +- 9 files changed, 1551 insertions(+), 2 deletions(-) create mode 100644 resources/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack.yaml create mode 100644 resources/Create an expense in Zoho Books for each new payment in Square.yaml create mode 100644 resources/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.yaml create mode 100644 resources/Create an item in Zoho Books for each new Shopify product.yaml create mode 100644 resources/markdown/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack_instructions.md create mode 100644 resources/markdown/Create an expense in Zoho Books for each new payment in Square_instructions.md create mode 100644 resources/markdown/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail_instructions.md create mode 100644 resources/markdown/Create an item in Zoho Books for each new Shopify product_instructions.md diff --git a/resources/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack.yaml b/resources/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack.yaml new file mode 100644 index 000000000..45fd2c99a --- /dev/null +++ b/resources/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack.yaml @@ -0,0 +1,191 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + connector-type: streaming-connector-scheduler + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: false + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: order + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: postQuotes_model + connector-type: zohobooks + actions: + postQuotes: {} + action-interface-3: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve orders + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + created_at_min: '{{$Trigger.lastEventTime}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$ShopifyRetrieveorders ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`output`: + type: object + properties: + Order_Number: + type: string + id: + type: string + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksCreatequote + $ref: >- + #/block/For each/node-output/Zoho Books Create + quote/response/payload + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - output: + mappings: + - Order_Number: + template: '{{$ZohoBooksCreatequote.reference_number}}' + - id: + template: '{{$ZohoBooksCreatequote.estimate_id}}' + display-name: Shopify order + - logging: + name: Log + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: + - logLevel: + template: Info + - logMessage: + template: Order Number=>{{$Foreach.output.Order_Number}} + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + tags: + - incomplete + assembly-2: + assembly: + execute: + - custom-action: + name: Zoho Books Create quote + target: + $ref: '#/integration/action-interfaces/action-interface-2' + action: postQuotes + map: + mappings: + - customer_id: + template: '1332619000000031077' + - line_items: + foreach: + input: '$Foreachitem.line_items ' + iterator: line_itemsItem + mappings: + - description: + template: '{{$line_itemsItem.title}}' + - discount_amount: + expression: '$line_itemsItem.total_discount ' + - item_id: + template: '1332619000000289019' + - quantity: + expression: '$line_itemsItem.quantity ' + - rate: + expression: '$line_itemsItem.price ' + - reference_number: + template: '{{$Foreachitem.id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message + target: + $ref: '#/integration/action-interfaces/action-interface-3' + map: + mappings: + - OBJECT_ID: + template: D05FP3M0YGH + - OBJECT_NAME: + template: im + - text: + template: Quote is ready + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create a quote in Zoho Books for each new Shopify order and send the quote through Slack +models: {} diff --git a/resources/Create an expense in Zoho Books for each new payment in Square.yaml b/resources/Create an expense in Zoho Books for each new payment in Square.yaml new file mode 100644 index 000000000..b60e68ca6 --- /dev/null +++ b/resources/Create an expense in Zoho Books for each new payment in Square.yaml @@ -0,0 +1,176 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: false + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + connector-type: streaming-connector-scheduler + action-interfaces: + action-interface-1: + type: api-action + business-object: payments + connector-type: square + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: getExpenses_model + connector-type: zohobooks + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: postExpense_model + connector-type: zohobooks + actions: + postExpense: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Square Retrieve payments + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + and: + - begin_time: '{{$split($Trigger.lastEventTime , "+")[0]}}' + - location_id: LS78PYWXTAFK2 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 100 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: false + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$SquareRetrievepayments ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Square payments + - logging: + name: Log + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: + - logLevel: + template: Info + - logMessage: + template: Expenses are created + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + tags: + - incomplete + assembly-2: + assembly: + execute: + - retrieve-action: + name: Zoho Books Retrieve expenses + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + reference_number: '{{$Foreachitem.id}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: SquareRetrievepayments + $ref: '#/node-output/Square Retrieve payments/response/payload' + - variable: SquareRetrievepaymentsMetadata + $ref: '#/node-output/Square Retrieve payments/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: true + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoBooksListexpensesMetadata."status-code"}}': '204' + execute: + - custom-action: + name: Zoho Books Create expense + target: + $ref: '#/integration/action-interfaces/action-interface-3' + action: postExpense + map: + mappings: + - account_id: + template: '1332619000000000570' + - amount: + expression: '$Foreachitem.amount_money.amount ' + - date: + template: '{{$split($Foreachitem.updated_at , "T")[0]}}' + - description: + template: >- + {{$Foreachitem.statement_description_identifier}} + - paid_through_account_id: + template: '1332619000000015012' + - reference_number: + template: '{{$Foreachitem.id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Create an expense in Zoho Books for each new payment in Square +models: {} diff --git a/resources/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.yaml b/resources/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.yaml new file mode 100644 index 000000000..3eb8993c1 --- /dev/null +++ b/resources/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.yaml @@ -0,0 +1,801 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + connector-type: streaming-connector-scheduler + type: event-trigger + triggers: + SCHEDULE: + input-context: + data: scheduler + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + subscription: + scheduleConfiguration: + interval: + unit: minute + value: 1 + runOnceOncheck: false + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: order + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: postInvoices_model + connector-type: zohobooks + actions: + postInvoices: {} + action-interface-3: + type: api-action + business-object: mail + connector-type: gmail + actions: + CREATE: {} + action-interface-4: + type: api-action + business-object: customer + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-5: + type: api-action + business-object: postCustomers_model + connector-type: zohobooks + actions: + postCustomers: {} + action-interface-6: + type: api-action + business-object: getCustomers_model + connector-type: zohobooks + actions: + RETRIEVEALL: {} + action-interface-7: + type: api-action + business-object: postCustomers_model + connector-type: zohobooks + actions: + postCustomers: {} + action-interface-8: + type: api-action + business-object: getItems_model + connector-type: zohobooks + actions: + RETRIEVEALL: {} + action-interface-9: + type: api-action + business-object: postItems_model + connector-type: zohobooks + actions: + postItems: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve orders + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + created_at_min: '{{$Trigger.lastEventTime}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$ShopifyRetrieveorders ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`output`: + type: object + properties: + id: + type: string + Cusotmer_ID: + type: string + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ZohoBooksCreateinvoice + $ref: >- + #/block/For each/node-output/Zoho Books Create + invoice/response/payload + - variable: GmailSendemail + $ref: >- + #/block/For each/node-output/Gmail Send + email/response/payload + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - output: + mappings: + - Cusotmer_ID: + template: '{{$If.Customer_ID}}' + - id: + template: ' {{$ZohoBooksCreateinvoice.invoice_number}}' + display-name: Shopify order + - logging: + name: Log + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: + - logLevel: + template: Info + - logMessage: + template: Order Number=>{{$Foreach.output.Order_Number}} + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + tags: + - incomplete + assembly-2: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve customers + target: + $ref: '#/integration/action-interfaces/action-interface-4' + filter: + where: + id: '{{$Foreachitem.customer.id}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: false + - if: + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ShopifyRetrievecustomers.email}}': + '=': '' + execute: + - custom-action: + name: Zoho Books Create customer + target: + $ref: '#/integration/action-interfaces/action-interface-5' + action: postCustomers + map: + mappings: + - contact_name: + template: '{{$ShopifyRetrievecustomers.first_name}}' + - contact_persons: + foreach: + input: '[{}]' + iterator: contact_personsItem + mappings: + - first_name: + template: '{{$ShopifyRetrievecustomers.first_name}}' + - last_name: + template: '{{$ShopifyRetrievecustomers.last_name}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + map: + mappings: + - Customer_ID: + template: '{{$ZohoBooksCreatecustomer.contact_id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksCreatecustomer + $ref: >- + #/block/If/node-output/Zoho Books Create + customer/response/payload + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: + - retrieve-action: + name: Zoho Books Retrieve customers + target: + $ref: '#/integration/action-interfaces/action-interface-6' + filter: + where: + email: '{{$ShopifyRetrievecustomers.email}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: ShopifyRetrieveorders + $ref: >- + #/node-output/Shopify Retrieve + orders/response/payload + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If 2 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoBooksRetrievecustomersMetadata."status-code"}}': '204' + execute: + - custom-action: + name: Zoho Books Create customer 2 + target: + $ref: >- + #/integration/action-interfaces/action-interface-7 + action: postCustomers + map: + mappings: + - contact_name: + template: '{{$ShopifyRetrievecustomers.first_name}}' + - contact_persons: + foreach: + input: '[{}]' + iterator: contact_personsItem + mappings: + - email: + template: '{{$ShopifyRetrievecustomers.email}}' + - first_name: + template: '{{$ShopifyRetrievecustomers.first_name}}' + - last_name: + template: '{{$ShopifyRetrievecustomers.last_name}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksCreatecustomer2 + $ref: >- + #/block/If 2/node-output/Zoho Books Create + customer 2/response/payload + - variable: ZohoBooksRetrievecustomers + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response/payload + - variable: ZohoBooksRetrievecustomersMetadata + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: ShopifyRetrieveorders + $ref: >- + #/node-output/Shopify Retrieve + orders/response/payload + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - Customer_ID: + template: '{{$ZohoBooksCreatecustomer2.contact_id}}' + else: + execute: [] + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksRetrievecustomers + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response/payload + - variable: ZohoBooksRetrievecustomersMetadata + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: ShopifyRetrieveorders + $ref: >- + #/node-output/Shopify Retrieve + orders/response/payload + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - Customer_ID: + template: '{{$ZohoBooksRetrievecustomers.contact_id}}' + output-schema: + type: object + properties: + Customer_ID: + type: string + required: [] + map: + mappings: + - Customer_ID: + template: '{{$If2.Customer_ID}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksRetrievecustomers + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response/payload + - variable: ZohoBooksRetrievecustomersMetadata + $ref: >- + #/block/If/node-output/Zoho Books Retrieve + customers/response + - variable: If2 + $ref: '#/block/If/node-output/If 2/response/payload' + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + output-schema: + type: object + properties: + Customer_ID: + type: string + required: [] + - for-each: + name: For each 2 + assembly: + $ref: '#/integration/assemblies/assembly-3' + source: + expression: '$Foreachitem.line_items ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`output`: + type: object + properties: + Line_Items: + type: array + items: + type: object + properties: + item_id: + type: string + quantity: + type: number + discount: + type: number + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksRetrieveitems + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response/payload + - variable: ZohoBooksRetrieveitemsMetadata + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response + - variable: If3 + $ref: '#/block/For each 2/node-output/If 3/response/payload' + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - output: + mappings: + - Line_Items: + foreach: + input: '[{}]' + iterator: Line_ItemsItem + mappings: + - discount: + expression: '$If3.Line_Items.Discount ' + - item_id: + template: '{{$If3.Line_Items.item_id}}' + - quantity: + expression: '$If3.Line_Items.quantity ' + display-name: Shopify Line Items + - custom-action: + name: Zoho Books Create invoice + target: + $ref: '#/integration/action-interfaces/action-interface-2' + action: postInvoices + map: + mappings: + - customer_id: + template: '{{$If.Customer_ID}}' + - line_items: + foreach: + mappings: + - discount: + expression: '$line_itemsItem.discount ' + - item_id: + template: '{{$line_itemsItem.item_id}}' + - quantity: + expression: '$line_itemsItem.quantity ' + input: '$Foreach2.output.Line_Items ' + iterator: line_itemsItem + - reference_number: + template: '{{$Foreachitem.id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: Foreach2 + $ref: '#/block/For each/node-output/For each 2/response/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Gmail Send email + target: + $ref: '#/integration/action-interfaces/action-interface-3' + map: + mappings: + - Body: + template: '{{$ZohoBooksCreateinvoice.invoice_id}}' + - To: + template: venkatkona790@gmail.com + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: Foreach2 + $ref: '#/block/For each/node-output/For each 2/response/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + assembly-3: + assembly: + execute: + - retrieve-action: + name: Zoho Books Retrieve items + target: + $ref: '#/integration/action-interfaces/action-interface-8' + filter: + where: + name: '{{$Foreach2item.title}}' + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If 3 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoBooksRetrieveitemsMetadata."status-code"}}': '204' + execute: + - custom-action: + name: Zoho Books Create item + target: + $ref: '#/integration/action-interfaces/action-interface-9' + action: postItems + map: + mappings: + - name: + template: '{{$Foreach2item.title}}' + - rate: + expression: '$Foreach2item.price ' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + map: + mappings: + - Line_Items: + foreach: + input: '[{}]' + iterator: Line_ItemsItem + mappings: + - Discount: + expression: '$Foreach2item.total_discount ' + - item_id: + template: '{{$ZohoBooksCreateitem.item_id}}' + - quantity: + expression: '$Foreach2item.quantity ' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksCreateitem + $ref: >- + #/block/If 3/node-output/Zoho Books Create + item/response/payload + - variable: ZohoBooksRetrieveitems + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response/payload + - variable: ZohoBooksRetrieveitemsMetadata + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + map: + mappings: + - Line_Items: + foreach: + input: '[{}]' + iterator: Line_ItemsItem + mappings: + - Discount: + expression: '$Foreach2item.total_discount ' + - item_id: + template: '{{$ZohoBooksRetrieveitems.item_id}}' + - quantity: + expression: '$Foreach2item.quantity ' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreach2item + $ref: '#/block/For each 2/current-item' + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: ZohoBooksRetrieveitems + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response/payload + - variable: ZohoBooksRetrieveitemsMetadata + $ref: >- + #/block/For each 2/node-output/Zoho Books Retrieve + items/response + - variable: ShopifyRetrievecustomers + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response/payload + - variable: ShopifyRetrievecustomersMetadata + $ref: >- + #/block/For each/node-output/Shopify Retrieve + customers/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ShopifyRetrieveorders + $ref: '#/node-output/Shopify Retrieve orders/response/payload' + - variable: ShopifyRetrieveordersMetadata + $ref: '#/node-output/Shopify Retrieve orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + output-schema: + type: object + properties: + Line_Items: + type: array + items: + type: object + properties: + item_id: + type: string + quantity: + type: number + Discount: + type: number + required: [] + required: [] + name: >- + Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail +models: {} diff --git a/resources/Create an item in Zoho Books for each new Shopify product.yaml b/resources/Create an item in Zoho Books for each new Shopify product.yaml new file mode 100644 index 000000000..627f32311 --- /dev/null +++ b/resources/Create an item in Zoho Books for each new Shopify product.yaml @@ -0,0 +1,303 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: api + trigger-interfaces: + trigger-interface-1: + triggers: + createItems: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: Items + output-context: + data: Items + options: + resources: + - business-object: Items + model: + $ref: '#/models/Items' + triggers: + create: createItems + type: api-trigger + action-interfaces: + action-interface-3: + type: api-action + business-object: product + connector-type: shopify + actions: + RETRIEVEALL: {} + action-interface-1: + type: api-action + business-object: postItems_model + connector-type: zohobooks + actions: + postItems: {} + action-interface-2: + type: api-action + business-object: getItems_model + connector-type: zohobooks + actions: + RETRIEVEALL: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Shopify Retrieve products + target: + $ref: '#/integration/action-interfaces/action-interface-3' + filter: + limit: 10 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: false + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$ShopifyRetrieveproducts ' + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`output`: + type: object + properties: + id: + type: string + Name: + type: string + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Request + $ref: '#/trigger/payload' + - variable: ZohoBooksListitems + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response/payload + - variable: ZohoBooksListitemsMetadata + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response + - variable: If + $ref: '#/block/For each/node-output/If/response/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - output: + mappings: + - Name: + template: '{{$If.Name}}' + - id: + template: '{{$If.id}}' + display-name: Shopify product + - response: + name: response-1 + reply-maps: + - title: Customer successfully created + status-code: '201' + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: >- + #/node-output/Shopify Retrieve + products/response/payload + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - Result: + template: >- + Input=>{{$ShopifyRetrieveproducts.title}} + Output=>{{$Foreach.output.Name}} + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: Foreach + $ref: '#/node-output/For each/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + catch: + - default: + - response: + name: response-1 + reply-maps: + - title: Bad request + status-code: 400 + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: errorDetails + $ref: '#/error' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - message: + template: '{{$errorDetails}}' + input: [] + tags: + - incomplete + assembly-2: + assembly: + execute: + - retrieve-action: + name: Zoho Books Retrieve items + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + name: '{{$Foreachitem.title}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Request + $ref: '#/trigger/payload' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: true + - if: + name: If + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Request + $ref: '#/trigger/payload' + - variable: ZohoBooksListitems + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response/payload + - variable: ZohoBooksListitemsMetadata + $ref: '#/block/For each/node-output/Zoho Books List items/response' + - variable: ShopifyRetrieveproducts + $ref: '#/node-output/Shopify Retrieve products/response/payload' + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$ZohoBooksListitemsMetadata."status-code"}}': '204' + execute: + - custom-action: + name: Zoho Books Create item + target: + $ref: '#/integration/action-interfaces/action-interface-1' + action: postItems + map: + mappings: + - name: + template: '{{$Foreachitem.title}}' + - rate: + expression: '$Foreachitem.variants[0].price ' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Request + $ref: '#/trigger/payload' + - variable: ZohoBooksListitems + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response/payload + - variable: ZohoBooksListitemsMetadata + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response + - variable: ShopifyRetrieveproducts + $ref: >- + #/node-output/Shopify Retrieve + products/response/payload + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Request + $ref: '#/trigger/payload' + - variable: ZohoBooksCreateitem + $ref: >- + #/block/If/node-output/Zoho Books Create + item/response/payload + - variable: ZohoBooksListitems + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response/payload + - variable: ZohoBooksListitemsMetadata + $ref: >- + #/block/For each/node-output/Zoho Books List + items/response + - variable: ShopifyRetrieveproducts + $ref: >- + #/node-output/Shopify Retrieve + products/response/payload + - variable: ShopifyRetrieveproductsMetadata + $ref: '#/node-output/Shopify Retrieve products/response' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - Name: + template: '{{$ZohoBooksCreateitem.name}}' + - id: + template: '{{$ZohoBooksCreateitem.item_id}}' + else: + execute: [] + output-schema: + type: object + properties: + id: + type: string + Name: + type: string + required: [] + name: Create an item in Zoho Books for each new Shopify product +models: + Items: + name: Items + properties: + Result: + required: false + id: true + type: string + plural: Items + description: ' ' + operations: + create: '#/integration/assemblies/assembly-1' diff --git a/resources/markdown/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack_instructions.md b/resources/markdown/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack_instructions.md new file mode 100644 index 000000000..8972fed86 --- /dev/null +++ b/resources/markdown/Create a quote in Zoho Books for each new Shopify order and send the quote through Slack_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20quote%20in%20Zoho%20Books%20for%20each%20new%20Shopify%20order%20and%20send%20the%20quote%20through%20Slack_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://ibm.biz/acshopify) + - [Zoho Books](https://ibm.biz/aczohobooks) + - [Slack](https://ibm.biz/acslack) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create a quote in Zoho Books for each new Shopify order and send the quote through Slack. diff --git a/resources/markdown/Create an expense in Zoho Books for each new payment in Square_instructions.md b/resources/markdown/Create an expense in Zoho Books for each new payment in Square_instructions.md new file mode 100644 index 000000000..ae73437d4 --- /dev/null +++ b/resources/markdown/Create an expense in Zoho Books for each new payment in Square_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20expense%20in%20Zoho%20Books%20for%20each%20new%20payment%20in%20Square_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Square](https://ibm.biz/acsquare) + - [Zoho Books](https://ibm.biz/aczohobooks) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create an expense in Zoho Books for each new payment in Square. \ No newline at end of file diff --git a/resources/markdown/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail_instructions.md b/resources/markdown/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail_instructions.md new file mode 100644 index 000000000..df26b5bd5 --- /dev/null +++ b/resources/markdown/Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20invoice%20in%20Zoho%20Books%20for%20each%20new%20Shopify%20order%20and%20send%20the%20invoice%20through%20Gmail_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://ibm.biz/acshopify) + - [Zoho Books](https://ibm.biz/aczohobooks) + - [Gmail](https://ibm.biz/acgmail) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail. diff --git a/resources/markdown/Create an item in Zoho Books for each new Shopify product_instructions.md b/resources/markdown/Create an item in Zoho Books for each new Shopify product_instructions.md new file mode 100644 index 000000000..07b1645a8 --- /dev/null +++ b/resources/markdown/Create an item in Zoho Books for each new Shopify product_instructions.md @@ -0,0 +1,10 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20item%20in%20Zoho%20Books%20for%20each%20new%20Shopify%20product_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Shopify](https://ibm.biz/acshopify) + - [Zoho Books](https://ibm.biz/aczohobooks) + +3. To start the flow, in the banner click **Start flow**. + +Use this template to create an item in Zoho Books for each new Shopify product. \ No newline at end of file diff --git a/resources/template-metadata.json b/resources/template-metadata.json index 745f6a876..8b1b3ee29 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -3607,6 +3607,42 @@ "targetApps": ["shopify", "clicksend", "ibmwatsonxai"], "tags": ["streaming-connector-scheduler", "shopify", "clicksend", "ibmwatsonxai", "foreach"], "offerings": ["app connect professional"] - } + }, + { + "name": "Create an expense in Zoho Books for each new payment in Square", + "description": "Use this template to create an expense in Zoho Books for each new payment in Square.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["square", "zohobooks"], + "tags": ["streaming-connector-scheduler", "square", "zohobooks", "foreach", "if", "log"], + "offerings": ["app connect professional"] + }, + { + "name": "Create an item in Zoho Books for each new Shopify product", + "description": "Use this template to create an item in Zoho Books for each new Shopify product.", + "summary": "1 flow using 2 applications", + "sourceApp": "api", + "targetApps": ["shopify", "zohobooks"], + "tags": ["api", "shopify", "zohobooks", "foreach", "if", "addErrorCatch"], + "offerings": ["app connect professional"] + }, + { + "name": "Create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail", + "description": "Use this template to create an invoice in Zoho Books for each new Shopify order and send the invoice through Gmail.", + "summary": "Scheduler to 3 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["shopify", "zohobooks", "gmail"], + "tags": ["streaming-connector-scheduler", "shopify", "zohobooks", "gmail", "foreach", "if", "log"], + "offerings": ["app connect professional"] + }, + { + "name": "Create a quote in Zoho Books for each new Shopify order and send the quote through Slack", + "description": "Use this template to create a quote in Zoho Books for each new Shopify order and send the quote through Slack.", + "summary": "Scheduler to 3 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["shopify", "zohobooks", "slack"], + "tags": ["streaming-connector-scheduler", "shopify", "zohobooks", "slack", "foreach", "log"], + "offerings": ["app connect professional"] + } ] -} +} \ No newline at end of file From 2c50ebdc79f45d8871bbfb62ec54f01a36e829b7 Mon Sep 17 00:00:00 2001 From: RaghuRam168 <61040521+RaghuRam168@users.noreply.github.com> Date: Mon, 22 Jul 2024 15:37:24 +0530 Subject: [PATCH 11/11] Usecase added for Wrike (#459) * Added use case templates for wrike. * Update template-metadata.json * Create Create a github comment when a comment is posted in wrike_instructions.md * Create Create a github issue according to the importance of wrike task_instructions.md * Create Create a wrike task when a new issue is raised in github_instructions.md * Update Create a github comment when a comment is posted in wrike_instructions.md * Update Create a github issue according to the importance of wrike task_instructions.md * Update Create a wrike task when a new issue is raised in github_instructions.md * Update template-metadata.json * Update template-metadata.json * Update template-metadata.json * Update Create a github comment when a comment is posted in wrike.yaml * Updated * Update Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md * Update Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md * Update Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md * Update Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md * Update Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md * Update Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md * Update template-metadata.json * Update template-metadata.json --------- Co-authored-by: Raghu Ram Dhigajarla Co-authored-by: ireneapeter <158272585+ireneapeter@users.noreply.github.com> Co-authored-by: Deepak Ayilliath <87267785+Deepak-Ayilliath@users.noreply.github.com> --- ...ke and notify through a Slack message.yaml | 75 ++++++ ...ub and notify through a Slack message.yaml | 84 ++++++ ...importance level of the task in Wrike.yaml | 248 ++++++++++++++++++ ...fy through a Slack message_instructions.md | 11 + ...fy through a Slack message_instructions.md | 12 + ...level of the task in Wrike_instructions.md | 12 + resources/template-metadata.json | 33 ++- 7 files changed, 472 insertions(+), 3 deletions(-) create mode 100644 resources/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message.yaml create mode 100644 resources/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message.yaml create mode 100644 resources/Create an issue in GitHub according to the importance level of the task in Wrike.yaml create mode 100644 resources/markdown/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md create mode 100644 resources/markdown/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md create mode 100644 resources/markdown/Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md diff --git a/resources/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message.yaml b/resources/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message.yaml new file mode 100644 index 000000000..4c1306251 --- /dev/null +++ b/resources/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message.yaml @@ -0,0 +1,75 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: wrike + triggers: + CREATED_POLLER: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: getComments_model + options: + subscription: + pollingInterval: 1 + action-interfaces: + action-interface-2: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + action-interface-1: + type: api-action + business-object: Comment + connector-type: github + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - create-action: + name: GitHub Create comment + target: + $ref: '#/integration/action-interfaces/action-interface-1' + map: + mappings: + - IssueNumber: + template: '9' + - OwnerName: + template: nonibmapp + - RepoName: + template: appconet8yvv + - body: + template: '{{$Trigger.text}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message + target: + $ref: '#/integration/action-interfaces/action-interface-2' + map: + mappings: + - OBJECT_ID: + template: C077JJM5VS6 + - OBJECT_NAME: + template: channel + - text: + template: 'comment : {{$Trigger.text}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: GitHubCreatecomment + $ref: '#/node-output/GitHub Create comment/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message +models: {} diff --git a/resources/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message.yaml b/resources/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message.yaml new file mode 100644 index 000000000..49e6f5a52 --- /dev/null +++ b/resources/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message.yaml @@ -0,0 +1,84 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: github + triggers: + CREATED_POLLER: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: Issue + options: + OwnerName: nonibmapp + RepoName: appconet8yvv + parentFilter: + OwnerName: nonibmapp + RepoName: appconet8yvv + subscription: + timeZone: UTC + pollingInterval: 1 + action-interfaces: + action-interface-1: + type: api-action + business-object: postFoldersByFolderIdTasks_model + connector-type: wrike + actions: + postFoldersByFolderIdTasks: {} + action-interface-2: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - custom-action: + action: postFoldersByFolderIdTasks + name: Wrike Create task + target: + $ref: '#/integration/action-interfaces/action-interface-1' + map: + mappings: + - description: + template: '{{$Trigger.body}}' + - folderId: + template: IEAGE3HGI5H3KSCJ + - importance: + template: Normal + - status: + template: Active + - title: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message + target: + $ref: '#/integration/action-interfaces/action-interface-2' + map: + mappings: + - OBJECT_ID: + template: U06FMLMPXK6 + - OBJECT_NAME: + template: user + - text: + template: New {{$WrikeCreatetask}} created in wrike. + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: WrikeCreatetask + $ref: '#/node-output/Wrike Create task/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + name: Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message +models: {} diff --git a/resources/Create an issue in GitHub according to the importance level of the task in Wrike.yaml b/resources/Create an issue in GitHub according to the importance level of the task in Wrike.yaml new file mode 100644 index 000000000..d4af42718 --- /dev/null +++ b/resources/Create an issue in GitHub according to the importance level of the task in Wrike.yaml @@ -0,0 +1,248 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + type: event-trigger + connector-type: wrike + triggers: + CREATED_POLLER: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: getTasks_model + options: + subscription: + pollingInterval: 5 + action-interfaces: + action-interface-1: + type: api-action + business-object: Issue + connector-type: github + actions: + CREATE: {} + action-interface-2: + type: api-action + business-object: Issue + connector-type: github + actions: + CREATE: {} + action-interface-3: + type: api-action + business-object: Issue + connector-type: github + actions: + CREATE: {} + action-interface-4: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + action-interface-5: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + action-interface-6: + type: api-action + business-object: message + connector-type: slack + actions: + CREATE: {} + action-interface-7: + type: api-action + business-object: mail + connector-type: email + actions: + CREATEEMAIL: {} + assemblies: + assembly-1: + assembly: + execute: + - if: + branch: + - condition: + '{{$Trigger.importance}}': High + execute: + - create-action: + name: GitHub Create issue + target: + $ref: '#/integration/action-interfaces/action-interface-1' + map: + mappings: + - OwnerName: + template: nonibmapp + - RepoName: + template: cct + - body: + template: '{{$Trigger.description}}' + - title: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message + target: + $ref: '#/integration/action-interfaces/action-interface-4' + map: + mappings: + - OBJECT_ID: + template: USLACKBOT + - OBJECT_NAME: + template: user + - text: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: GitHubCreateissue + $ref: >- + #/block/If/node-output/GitHub Create + issue/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + - custom-action: + action: CREATEEMAIL + name: Email Send email + target: + $ref: '#/integration/action-interfaces/action-interface-7' + map: + mappings: + - attachmentForCreate: + foreach: + mappings: + - contentType: + template: text/csv + input: '['''']' + iterator: attachmentForCreateItem + - emailBody: + template: '{{$Trigger.description}}' + - subjectFilter: + template: '{{$Trigger.title}}' + - toFilter: + template: jahnavim111@gmail.com + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: GitHubCreateissue + $ref: >- + #/block/If/node-output/GitHub Create + issue/response/payload + - variable: SlackSendmessage + $ref: >- + #/block/If/node-output/Slack Send + message/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + - condition: + '{{$Trigger.importance}}': Normal + execute: + - create-action: + name: GitHub Create issue 2 + target: + $ref: '#/integration/action-interfaces/action-interface-2' + map: + mappings: + - OwnerName: + template: nonibmapp + - RepoName: + template: appconet8yvv + - body: + template: '{{$Trigger.description}}' + - title: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message 2 + target: + $ref: '#/integration/action-interfaces/action-interface-5' + map: + mappings: + - OBJECT_ID: + template: U06F85C5GQM + - OBJECT_NAME: + template: user + - text: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: GitHubCreateissue2 + $ref: >- + #/block/If/node-output/GitHub Create issue + 2/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: + - create-action: + name: GitHub Create issue 3 + target: + $ref: '#/integration/action-interfaces/action-interface-3' + map: + mappings: + - OwnerName: + template: non-ibm-primary + - RepoName: + template: cct-private + - body: + template: '{{$Trigger.description}}' + - title: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Slack Send message 3 + target: + $ref: '#/integration/action-interfaces/action-interface-6' + map: + mappings: + - OBJECT_ID: + template: U06FMLMPXK6 + - OBJECT_NAME: + template: user + - text: + template: '{{$Trigger.title}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: GitHubCreateissue3 + $ref: >- + #/block/If/node-output/GitHub Create issue + 3/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + output-schema: + type: object + properties: + Importance: + type: string + required: + - Importance + name: Create an issue in GitHub according to the importance level of the task in Wrike +models: {} diff --git a/resources/markdown/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md b/resources/markdown/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md new file mode 100644 index 000000000..85c56dec3 --- /dev/null +++ b/resources/markdown/Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message_instructions.md @@ -0,0 +1,11 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20comment%20in%20GitHub%20when%20a%20new%20comment%20is%20posted%20in%20Wrike%20and%20notify%20through%20a%20Slack%20message_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Wrike](https://ibm.biz/acwrike) + - [Slack](https://ibm.biz/acslack) + - [GitHub](https://ibm.biz/acgithub) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message. diff --git a/resources/markdown/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md b/resources/markdown/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md new file mode 100644 index 000000000..0486ef71f --- /dev/null +++ b/resources/markdown/Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message_instructions.md @@ -0,0 +1,12 @@ + +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20a%20task%20in%20Wrike%20when%20a%20new%20issue%20is%20raised%20in%20GitHub%20and%20notify%20through%20a%20Slack%20message_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Wrike](https://ibm.biz/acwrike) + - [Slack](https://ibm.biz/acslack) + - [GitHub](https://ibm.biz/acgithub) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message. diff --git a/resources/markdown/Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md b/resources/markdown/Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md new file mode 100644 index 000000000..8058b305d --- /dev/null +++ b/resources/markdown/Create an issue in GitHub according to the importance level of the task in Wrike_instructions.md @@ -0,0 +1,12 @@ +To refer to these instructions while editing the flow, open [the GitHub page](https://github.com/ot4i/app-connect-templates/blob/main/resources/markdown/Create%20an%20issue%20in%20GitHub%20according%20to%20the%20importance%20level%20of%20the%20task%20in%20Wrike_instructions.md) (opens in a new window). + +1. Click **Use this template** to start using the template. +2. Connect to the following accounts by using your credentials: + - [Wrike](https://ibm.biz/acwrike) + - [Slack](https://ibm.biz/acslack) + - [GitHub](https://ibm.biz/acgithub) + - [Email](https://ibm.biz/acemail) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create an issue in GitHub according to the importance level of the task in Wrike. diff --git a/resources/template-metadata.json b/resources/template-metadata.json index 8b1b3ee29..857402e96 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -3590,7 +3590,7 @@ "tags": ["wufoo", "zohocrm", "if"], "offerings": ["app connect professional"] }, -{ + { "name": "Summarize the open leads from Salesforce using IBM watsonx ai and send an email", "description": "Use this template to send a scheduled mail to a salesforce user with a summary of their open, not contacted, and unread leads using IBM watsonx.ai.", "summary": "Scheduler to 3 applications", @@ -3643,6 +3643,33 @@ "targetApps": ["shopify", "zohobooks", "slack"], "tags": ["streaming-connector-scheduler", "shopify", "zohobooks", "slack", "foreach", "log"], "offerings": ["app connect professional"] - } + }, + { + "name": "Create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message", + "description": "Use this template to create a comment in GitHub when a new comment is posted in Wrike and notify through a Slack message.", + "summary": "Wrike to 2 applications", + "sourceApp": "wrike", + "targetApps": ["github", "slack"], + "tags": ["wrike", "slack", "github"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create an issue in GitHub according to the importance level of the task in Wrike", + "description": "Use this template to create an issue in GitHub according to the importance level of the task in Wrike.", + "summary": "Wrike to 3 applications", + "sourceApp": "wrike", + "targetApps": ["github", "slack", "email"], + "tags": ["wrike", "slack", "email", "github", "if"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message", + "description": "Use this template to create a task in Wrike when a new issue is raised in GitHub and notify through a Slack message.", + "summary": "GitHub to 2 applications", + "sourceApp": "github", + "targetApps": ["wrike", "slack"], + "tags": ["github", "wrike", "slack"], + "offerings": ["app connect professional"] +} ] -} \ No newline at end of file +}