diff --git a/resources/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online.yaml b/resources/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online.yaml new file mode 100644 index 000000000..05a2fd012 --- /dev/null +++ b/resources/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online.yaml @@ -0,0 +1,109 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: trigger-action + trigger-interfaces: + trigger-interface-1: + connector-type: msexcel + type: event-trigger + triggers: + CREATED: + input-context: + data: Row + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + DriveId: b!cj6fpn_rckezu0EVg2oMOgMC0sfPYdFKvhluqpsZkGU5UFn7wDNpRpM91EGWr_sa + WorkbookId: 01NODPFIV6WLNK4RVUGJG2VTFRHU7FRBVM + WorksheetId: '{00000000-0001-0000-0000-000000000000}' + parentFilter: + DriveId: >- + b!cj6fpn_rckezu0EVg2oMOgMC0sfPYdFKvhluqpsZkGU5UFn7wDNpRpM91EGWr_sa + WorkbookId: 01NODPFIV6WLNK4RVUGJG2VTFRHU7FRBVM + WorksheetId: '{00000000-0001-0000-0000-000000000000}' + action-interfaces: + action-interface-3: + type: api-action + business-object: request + connector-type: http + actions: + INVOKE: {} + assemblies: + assembly-1: + assembly: + execute: + - set-variable: + name: Set variable + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`variable`: + type: object + properties: + topobject: + type: object + properties: + eventresponse: + type: object + properties: + budget: + type: number + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - variable: + mappings: + - topobject: + mappings: + - eventresponse: + expression: '$Trigger ' + mappings: + - budget: + expression: '100000' + - if: + name: If + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$Trigger.rowData.Q}}': + lte: '{{$Setvariable.variable.topobject.eventresponse.budget}}' + execute: + - custom-action: + name: HTTP Invoke method + target: + $ref: '#/integration/action-interfaces/action-interface-3' + action: INVOKE + map: + mappings: + - method: + template: POST + - requestBody: + template: '{{$Setvariable.variable.topobject}}' + - url: + template: >- + https://instance-name/Create a job requisition in Workday/createJob_requisitions + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: RedisGetvalueofstring + $ref: >- + #/node-output/Redis Get value of + string/response/payload + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Create a job requisition in Workday when a new row is appended in Microsoft Excel Online +models: {} diff --git a/resources/Create a job requisition in Workday.yaml b/resources/Create a job requisition in Workday.yaml new file mode 100644 index 000000000..e32e9a133 --- /dev/null +++ b/resources/Create a job requisition in Workday.yaml @@ -0,0 +1,162 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: api + trigger-interfaces: + trigger-interface-1: + triggers: + createJob_requisitions: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: job_requisitions + output-context: + data: job_requisitions + options: + resources: + - business-object: job_requisitions + model: + $ref: '#/models/job_requisitions' + triggers: + create: createJob_requisitions + type: api-trigger + action-interfaces: + action-interface-2: + type: api-action + business-object: Recruiting___Create_Job_Requisition + connector-type: workday + actions: + Create_Job_Requisition: {} + assemblies: + assembly-1: + assembly: + execute: + - custom-action: + name: Workday Create Job Requisition + target: + $ref: '#/integration/action-interfaces/action-interface-2' + action: Create_Job_Requisition + map: + mappings: + - Create_Job_Requisition_Data: + mappings: + - Create_Job_Requisition_Reason_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Event_Classification_Subcategory_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.B}} + - Job_Requisition_Data: + mappings: + - Job_Description: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.F}}' + - Job_Description_Summary: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.E}}' + - Job_Posting_Title: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.D}}' + - Job_Profile_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Job_Profile_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.G}} + - Position_Time_Type_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Position_Time_Type_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.L}} + - Primary_Job_Posting_Location_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Location_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.K}} + - Primary_Location_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Location_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.J}} + - Recruiting_Start_Date___Date: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.N}}' + - Scheduled_Weekly_Hours: + expression: '$MicrosoftExcelOnlineAppendrow.rowData.M ' + - Target_End_Date___Date: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.P}}' + - Target_Hire_Date___Date: + template: '{{$MicrosoftExcelOnlineAppendrow.rowData.O}}' + - Worker_Sub-Type_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Employee_Type_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.I}} + - Worker_Type_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Worker_Type_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.H}} + - Number_of_Openings: + expression: '$MicrosoftExcelOnlineAppendrow.rowData.C ' + - Supervisory_Organization_Reference: + mappings: + - ID__NORMALIZED: + mappings: + - Organization_Reference_ID: + template: >- + {{$MicrosoftExcelOnlineAppendrow.rowData.A}} + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - response: + name: response-1 + reply-maps: + - title: job_requisitions successfully created + status-code: 201 + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: WorkdayCreateJobRequisition + $ref: >- + #/node-output/Workday Create Job + Requisition/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - budgetvalue: + expression: '$Request.budgetvalue ' + - eventresponse: + expression: '$WorkdayCreateJobRequisition ' + input: [] + tags: + - incomplete + name: Create a job requisition in Workday +models: + job_requisitions: + name: job_requisitions + properties: + budgetvalue: + required: false + id: true + type: number + eventresponse: + required: false + id: false + type: {} + plural: job_requisitions + description: ' ' + operations: + create: '#/integration/assemblies/assembly-1' diff --git a/resources/Create an event in Google Calendar for each registered Eventbrite event attendee.yaml b/resources/Create an event in Google Calendar for each registered Eventbrite event attendee.yaml new file mode 100644 index 000000000..903dc74e5 --- /dev/null +++ b/resources/Create an event in Google Calendar for each registered Eventbrite event attendee.yaml @@ -0,0 +1,189 @@ +$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: + calendar: + cronExp: 00 09 * * * + runOnceOncheck: true + timeZone: UTC + every: day + connector-type: streaming-connector-scheduler + action-interfaces: + action-interface-1: + type: api-action + business-object: Attendee + connector-type: eventbrite + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: Event + connector-type: eventbrite + actions: + RETRIEVEALL: {} + action-interface-3: + type: api-action + business-object: events + connector-type: googlecalendar + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Eventbrite Retrieve events + target: + $ref: '#/integration/action-interfaces/action-interface-2' + filter: + where: + organizationID: '344797520005' + input: + - variable: EventbriteCreateevent + $ref: '#/node-output/Eventbrite Create event/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: false + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$EventbriteRetrieveevents ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: EventbriteRetrieveevents + $ref: '#/node-output/Eventbrite Retrieve events/response/payload' + - variable: EventbriteRetrieveeventsMetadata + $ref: '#/node-output/Eventbrite Retrieve events/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Eventbrite Event + assembly-2: + assembly: + execute: + - retrieve-action: + name: Eventbrite Retrieve attendees + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + event_id: '{{$Foreachitem.id}}' + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: EventbriteRetrieveevents + $ref: '#/node-output/Eventbrite Retrieve events/response/payload' + - variable: EventbriteRetrieveeventsMetadata + $ref: '#/node-output/Eventbrite Retrieve events/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: false + - if: + name: If + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: EventbriteRetrieveattendees + $ref: >- + #/block/For each/node-output/Eventbrite Retrieve + attendees/response/payload + - variable: EventbriteRetrieveattendeesMetadata + $ref: >- + #/block/For each/node-output/Eventbrite Retrieve + attendees/response + - variable: EventbriteRetrieveevents + $ref: '#/node-output/Eventbrite Retrieve events/response/payload' + - variable: EventbriteRetrieveeventsMetadata + $ref: '#/node-output/Eventbrite Retrieve events/response' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + and: + - '{{$Foreachitem.created}}': + gte: '{{$now()}}' + - '{{$Foreachitem.status}}': Completed + hashKey: object:790 + execute: + - create-action: + name: Google Calendar Create event + target: + $ref: '#/integration/action-interfaces/action-interface-3' + map: + mappings: + - attendees: + foreach: + input: '[0]' + iterator: attendeesItem + mappings: + - email: + template: >- + {{$EventbriteRetrieveattendees.profile.email[1]}} + - endTime: + template: '2023-09-13T10:00:00' + - id: + template: >- + tbp52a61ab1teqs5lpo1qte2lk@group.calendar.google.com + - startTime: + template: '2023-09-13T10:00:00' + - summary: + template: '{{$Foreachitem.summary}}' + - timeZone: + template: Asia/Kolkata + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: EventbriteRetrieveattendees + $ref: >- + #/block/For each/node-output/Eventbrite Retrieve + attendees/response/payload + - variable: EventbriteRetrieveattendeesMetadata + $ref: >- + #/block/For each/node-output/Eventbrite Retrieve + attendees/response + - variable: EventbriteRetrieveevents + $ref: >- + #/node-output/Eventbrite Retrieve + events/response/payload + - variable: EventbriteRetrieveeventsMetadata + $ref: >- + #/node-output/Eventbrite Retrieve + events/response + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Create an event in Google Calendar for each registered Eventbrite event attendee +models: {} diff --git a/resources/Integrate data between Box files and Microsoft Azure Blob storage.yaml b/resources/Integrate data between Box files and Microsoft Azure Blob storage.yaml new file mode 100644 index 000000000..0d8130ef0 --- /dev/null +++ b/resources/Integrate data between Box files and Microsoft Azure Blob storage.yaml @@ -0,0 +1,167 @@ +$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: + calendar: + cronExp: 30 09 * * MON + runOnceOncheck: true + timeZone: UTC + every: week + action-interfaces: + action-interface-1: + type: api-action + business-object: File + connector-type: box + actions: + RETRIEVEALL: {} + action-interface-2: + type: api-action + business-object: File + connector-type: box + actions: + DOWNLOADFILE: {} + action-interface-3: + type: api-action + business-object: appendBlob + connector-type: azureblobstorage + actions: + UPSERTWITHWHERE: {} + assemblies: + assembly-1: + assembly: + execute: + - retrieve-action: + name: Box Retrieve file metadata + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + and: + - file_extensions: csv + - created_at_range_min: '{{$Trigger.lastEventTime}}' + - created_at_range_max: '{{$Trigger.currentEventTime}}' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + allow-truncation: false + pagination-type: SKIP_LIMIT + allow-empty-output: false + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$BoxRetrievefilemetadata ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: BoxRetrievefilemetadata + $ref: '#/node-output/Box Retrieve file metadata/response/payload' + - variable: BoxRetrievefilemetadataMetadata + $ref: '#/node-output/Box Retrieve file metadata/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Box File + assembly-2: + assembly: + execute: + - custom-action: + name: Box Retrieve file content + target: + $ref: '#/integration/action-interfaces/action-interface-2' + action: DOWNLOADFILE + map: + mappings: + - fileType: + template: Text + - id: + template: '{{$Foreachitem.id}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: BoxRetrievefilemetadata + $ref: '#/node-output/Box Retrieve file metadata/response/payload' + - variable: BoxRetrievefilemetadataMetadata + $ref: '#/node-output/Box Retrieve file metadata/response' + - variable: flowDetails + $ref: '#/flowDetails' + - upsert-action: + name: Microsoft Azure Blob storage Update or create append blob + target: + $ref: '#/integration/action-interfaces/action-interface-3' + map: + mappings: + - containerName: + template: 000azuretest + - metadata: + mappings: + - Data: + template: test csv data 50 + customSchemas: + properties.`metadata`: + type: object + properties: + Data: + type: string + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: BoxRetrievefilecontent + $ref: >- + #/block/For each/node-output/Box Retrieve file + content/response/payload + - variable: BoxRetrievefilemetadata + $ref: '#/node-output/Box Retrieve file metadata/response/payload' + - variable: BoxRetrievefilemetadataMetadata + $ref: '#/node-output/Box Retrieve file metadata/response' + - variable: flowDetails + $ref: '#/flowDetails' + filter: + where: + and: + - name: testpratik + - containerName: 000azuretest + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: BoxRetrievefilecontent + $ref: >- + #/block/For each/node-output/Box Retrieve file + content/response/payload + - variable: BoxRetrievefilemetadata + $ref: '#/node-output/Box Retrieve file metadata/response/payload' + - variable: BoxRetrievefilemetadataMetadata + $ref: '#/node-output/Box Retrieve file metadata/response' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 10 + name: Integrate data between Box files and Microsoft Azure Blob storage +models: {} diff --git a/resources/Invoke an HTTP method for each item retrieved from a new sales order created using Magento.yaml b/resources/Invoke an HTTP method for each item retrieved from a new sales order created using Magento.yaml new file mode 100644 index 000000000..83e2882f7 --- /dev/null +++ b/resources/Invoke an HTTP method for each item retrieved from a new sales order created using Magento.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 + triggers: + CREATED: + input-context: + data: SalesOrder + assembly: + $ref: '#/integration/assemblies/assembly-1' + options: + webhookURLSuffix: arwc2spWz2KqQLYQLuAZFuCI9B8LPgEB9TseCFbP0Tq8CVDzvK7I2b-6Om33lyZe + connector-type: magento + action-interfaces: + action-interface-1: + type: api-action + business-object: request + connector-type: http + actions: + INVOKE: {} + assemblies: + assembly-1: + assembly: + execute: + - for-each: + name: For each + assembly: + $ref: '#/integration/assemblies/assembly-2' + source: + expression: '$Trigger.items ' + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: MagentoRetrievesalesorders + $ref: >- + #/node-output/Magento Retrieve sales + orders/response/payload + - variable: MagentoRetrievesalesordersMetadata + $ref: '#/node-output/Magento Retrieve sales orders/response' + - variable: flowDetails + $ref: '#/flowDetails' + mode: sequential + continue-on-error: true + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: [] + display-name: Magento items + tags: + - incomplete + assembly-2: + assembly: + execute: + - if: + name: If + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + branch: + - condition: + '{{$Foreachitem.product_type}}': configurable + execute: + - set-variable: + name: Set variable + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`variable`: + type: object + properties: + customer_id: + type: string + customer_email: + type: string + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - variable: + mappings: + - customer_email: + template: '{{$Foreachitem.customerEmail}}' + - customer_id: + template: '{{$Foreachitem.customerId}}' + - custom-action: + name: HTTP Invoke method + target: + $ref: '#/integration/action-interfaces/action-interface-1' + action: INVOKE + map: + mappings: + - method: + template: POST + - requestBody: + template: '{{$Setvariable.variable.customer_email}}' + - url: + template: sdsd + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Foreachitem + $ref: '#/block/For each/current-item' + - variable: Setvariable + $ref: >- + #/block/If/node-output/Set + variable/response/payload + - variable: flowDetails + $ref: '#/flowDetails' + else: + execute: [] + output-schema: {} + name: Invoke an HTTP method for each item retrieved from a new sales order created using Magento +models: {} diff --git a/resources/Retrieve a ticket from Zendesk Service based on the ticket severity.yaml b/resources/Retrieve a ticket from Zendesk Service based on the ticket severity.yaml new file mode 100644 index 000000000..de1e4cfc6 --- /dev/null +++ b/resources/Retrieve a ticket from Zendesk Service based on the ticket severity.yaml @@ -0,0 +1,225 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: api + trigger-interfaces: + trigger-interface-1: + triggers: + retrieveallTriage: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: triage + output-context: + data: triage + options: + resources: + - business-object: triage + model: + $ref: '#/models/triage' + triggers: + retrieveall: retrieveallTriage + type: api-trigger + action-interfaces: + action-interface-1: + type: api-action + business-object: Ticket + connector-type: zendeskservice + actions: + RETRIEVEALL: {} + assemblies: + assembly-1: + assembly: + execute: + - set-variable: + name: Set variable + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`variable`: + type: object + properties: + currentTime: + type: number + input: + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - variable: + mappings: + - currentTime: + expression: '$number($toMillis($now() ) ) ' + - set-variable: + name: Set variable 2 + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`variable`: + type: object + properties: + timeObject: + type: object + properties: + urgent: + type: number + high: + type: number + input: + - variable: api + $ref: '#/trigger/api/parameters' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - variable: + mappings: + - timeObject: + mappings: + - high: + expression: '86400000' + - urgent: + expression: '14400000' + - set-variable: + name: Set variable 3 + map: + $map: http://ibm.com/appconnect/map/v1 + customSchemas: + properties.`variable`: + type: object + properties: + timeToUse: + type: number + input: + - variable: api + $ref: '#/trigger/api/parameters' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: Setvariable2 + $ref: '#/node-output/Set variable 2/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - variable: + mappings: + - timeToUse: + expression: >- + $number($lookup($Setvariable2.variable.timeObject + , $api.where.priority ) ) + - logging: + name: Log + map: + $map: http://ibm.com/appconnect/map/v1 + mappings: + - logLevel: + template: Info + - logMessage: + template: >- + {{$fromMillis($number($Setvariable.variable.currentTime)-$number($Setvariable3.variable.timeToUse + ) )}} + input: + - variable: api + $ref: '#/trigger/api/parameters' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: Setvariable2 + $ref: '#/node-output/Set variable 2/response/payload' + - variable: Setvariable3 + $ref: '#/node-output/Set variable 3/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - retrieve-action: + name: Zendesk Service Retrieve tickets + target: + $ref: '#/integration/action-interfaces/action-interface-1' + filter: + where: + priority: '{{$api.where.priority}}' + input: + - variable: api + $ref: '#/trigger/api/parameters' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: Setvariable2 + $ref: '#/node-output/Set variable 2/response/payload' + - variable: Setvariable3 + $ref: '#/node-output/Set variable 3/response/payload' + - variable: flowDetails + $ref: '#/flowDetails' + limit: 1000 + allow-truncation: true + pagination-type: TOKEN + allow-empty-output: true + - response: + name: response-1 + reply-maps: + - title: triage successfully retrieved + status-code: 200 + map: + mappings: + - triage: + foreach: + input: '$ZendeskServiceRetrievetickets ' + iterator: triageItem + mappings: + - id: + expression: '$triageItem.id ' + - priority: + template: '{{$triageItem.priority}}' + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: api + $ref: '#/trigger/api/parameters' + - variable: Setvariable + $ref: '#/node-output/Set variable/response/payload' + - variable: Setvariable2 + $ref: '#/node-output/Set variable 2/response/payload' + - variable: Setvariable3 + $ref: '#/node-output/Set variable 3/response/payload' + - variable: ZendeskServiceRetrievetickets + $ref: >- + #/node-output/Zendesk Service Retrieve + tickets/response/payload + - variable: ZendeskServiceRetrieveticketsMetadata + $ref: >- + #/node-output/Zendesk Service Retrieve + tickets/response + - variable: flowDetails + $ref: '#/flowDetails' + input: [] + tags: + - incomplete + name: Retrieve a ticket from Zendesk Service based on the ticket severity +models: + triage: + name: triage + properties: + priority: + required: false + id: false + type: string + id: + required: false + id: true + type: number + status: + required: false + id: false + type: string + subject: + required: false + id: false + type: string + assignee_id: + required: false + id: false + type: number + plural: triage + description: ' ' + operations: + retrieveall: '#/integration/assemblies/assembly-1' + interactions: + retrieveall: + pagination-type: none + filterSupport: + queryablefields: + - priority diff --git a/resources/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity.yaml b/resources/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity.yaml new file mode 100644 index 000000000..28e5271c6 --- /dev/null +++ b/resources/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity.yaml @@ -0,0 +1,92 @@ +$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: hour + value: 1 + runOnceOncheck: true + days: + - MON + - TUE + - WED + - THU + - FRI + - SAT + - SUN + timeZone: UTC + action-interfaces: + action-interface-1: + type: api-action + business-object: request + connector-type: http + actions: + INVOKE: {} + action-interface-2: + type: api-action + business-object: mail + connector-type: gmail + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - custom-action: + name: HTTP Invoke method + target: + $ref: '#/integration/action-interfaces/action-interface-1' + action: INVOKE + map: + customSchemas: + properties.`requestHeaders`: + type: object + properties: + Username: + type: string + Password: + type: string + rejectUnauthorized: + type: boolean + mappings: + - continue2xx: + expression: 'true' + - method: + template: GET + - requestHeaders: + mappings: + - Password: + template: 0bfaIZcF73MmJ5uPkCzW1UqD9l64GdBO + - Username: + template: rg7wvK6u + - rejectUnauthorized: + expression: 'false' + - url: + template: >- + https://instance-name/Retrieve a ticket from Zendesk Service based on the ticket severity/triage?priority=urgent + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Trigger + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + - create-action: + name: Gmail Send email + target: + $ref: '#/integration/action-interfaces/action-interface-2' + tags: + - incomplete + name: Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity +models: {} diff --git a/resources/Send a Gmail message when a new sales rule coupon is created in Magento.yaml b/resources/Send a Gmail message when a new sales rule coupon is created in Magento.yaml new file mode 100644 index 000000000..3a59ae6c6 --- /dev/null +++ b/resources/Send a Gmail message when a new sales rule coupon is created in Magento.yaml @@ -0,0 +1,83 @@ +$integration: http://ibm.com/appconnect/integration/v2/integrationFile +integration: + type: api + trigger-interfaces: + trigger-interface-1: + triggers: + createCoupon: + assembly: + $ref: '#/integration/assemblies/assembly-1' + input-context: + data: coupon + output-context: + data: coupon + options: + resources: + - business-object: coupon + model: + $ref: '#/models/coupon' + triggers: + create: createCoupon + type: api-trigger + action-interfaces: + action-interface-1: + type: api-action + business-object: SalesRuleCoupon + connector-type: magento + actions: + CREATE: {} + action-interface-2: + type: api-action + business-object: mail + connector-type: gmail + actions: + CREATE: {} + assemblies: + assembly-1: + assembly: + execute: + - create-action: + name: Magento Create sales rule coupon + target: + $ref: '#/integration/action-interfaces/action-interface-1' + - create-action: + name: Gmail Send email + target: + $ref: '#/integration/action-interfaces/action-interface-2' + - response: + name: response-1 + reply-maps: + - title: coupon successfully created + status-code: 201 + map: + $map: http://ibm.com/appconnect/map/v1 + input: + - variable: Request + $ref: '#/trigger/payload' + - variable: flowDetails + $ref: '#/flowDetails' + mappings: + - CustomerEmail: + template: '{{$Request.CustomerEmail}}' + - customerID: + template: '{{$Request.customerID}}' + input: [] + tags: + - incomplete + name: Send a Gmail message when a new sales rule coupon is created in Magento +models: + coupon: + name: coupon + properties: + customerID: + required: false + id: true + type: string + CustomerEmail: + required: false + id: false + type: string + plural: coupon + description: ' ' + operations: + create: '#/integration/assemblies/assembly-1' diff --git a/resources/markdown/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online_instructions.md b/resources/markdown/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online_instructions.md new file mode 100644 index 000000000..be27837c0 --- /dev/null +++ b/resources/markdown/Create a job requisition in Workday when a new row is appended in Microsoft Excel Online_instructions.md @@ -0,0 +1,21 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Create%20a%20job%20requisition%20in%20Workday%20when%20a%20new%20row%20is%20appended%20in%20Microsoft%20Excel%20Online_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: + - [Microsoft Excel Online](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-microsoft-excel-online) + - [HTTP](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-http) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create a job requisition in Workday whenever a new row is appended in Microsoft Excel Online. +In this example, if the budget amount is less than a specific amount, an HTTP method is invoked to create a job requisition in Workday. + +This is a sequel flow for 'Create a job requisition in Workday' template. + +Ensure that you specify the complete URL path of the 'Create a job requisition in Workday' template. + + + + + + diff --git a/resources/markdown/Create a job requisition in Workday_instructions.md b/resources/markdown/Create a job requisition in Workday_instructions.md new file mode 100644 index 000000000..b670f71ee --- /dev/null +++ b/resources/markdown/Create a job requisition in Workday_instructions.md @@ -0,0 +1,15 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Create%20a%20job%20requisition%20in%20Workday_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: + - [Workday](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-workday) +3. To start the flow, in the banner, click **Start flow**. + + +Use this API template to create a job requistion in Workday. + + + + + + diff --git a/resources/markdown/Create an event in Google Calendar for each registered Eventbrite event attendee_instructions.md b/resources/markdown/Create an event in Google Calendar for each registered Eventbrite event attendee_instructions.md new file mode 100644 index 000000000..fa288837e --- /dev/null +++ b/resources/markdown/Create an event in Google Calendar for each registered Eventbrite event attendee_instructions.md @@ -0,0 +1,15 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Create%20an%20event%20in%20Google%20Calendar%20for%20each%20registered%20Eventbrite%20event%20attendee_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: + - [Eventbrite](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-eventbrite) + - [Google Calendar](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-google-calendar) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create an event in Google Calendar for each registered Eventbrite event attendee. In this example, a Google Calendar event is sent to each of the newly registered Eventbrite attendees. + + + + + diff --git a/resources/markdown/Integrate data between Box files and Microsoft Azure Blob storage_instructions.md b/resources/markdown/Integrate data between Box files and Microsoft Azure Blob storage_instructions.md new file mode 100644 index 000000000..c63033cf5 --- /dev/null +++ b/resources/markdown/Integrate data between Box files and Microsoft Azure Blob storage_instructions.md @@ -0,0 +1,16 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Integrate%20data%20between%20Box%20files%20and%20Microsoft%20Azure%20Blob%20storage_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: + - [Box](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-box) + - [Microsoft Azure Blob storage](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-microsoft-azure-blob-storage) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to create a scheduler-based flow that retrieves CSV-type file metadata from Box for a specified time. For each Box file, the file content is retrieved in text format, and the content is appended into a Microsoft Azure Blob storage container. This scenario helps to merge multiple CSV files into a Microsoft Azure Blob storage container. + + + + + + diff --git a/resources/markdown/Invoke an HTTP method for each item retrieved from a new sales order created using Magento_instructions.md b/resources/markdown/Invoke an HTTP method for each item retrieved from a new sales order created using Magento_instructions.md new file mode 100644 index 000000000..f8b6c86a1 --- /dev/null +++ b/resources/markdown/Invoke an HTTP method for each item retrieved from a new sales order created using Magento_instructions.md @@ -0,0 +1,18 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Invoke%20an%20HTTP%20method%20for%20each%20item%20retrieved%20from%20a%20new%20sales%20order%20created%20using%20Magento_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: + - [Magento](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-magento) + - [HTTP](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-http) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to invoke a method for each item retrieved from a new sales order created using Magento. In this example, when a new sales order is created, an HTTP method is invoked, which sends a request to a client URL to get the customer email details. + +This scenario helps identify the customers who have recently bought items through a sales order created in Magento. + + + + + + diff --git a/resources/markdown/Retrieve a ticket from Zendesk Service based on the ticket severity_instructions.md b/resources/markdown/Retrieve a ticket from Zendesk Service based on the ticket severity_instructions.md new file mode 100644 index 000000000..606ded1af --- /dev/null +++ b/resources/markdown/Retrieve a ticket from Zendesk Service based on the ticket severity_instructions.md @@ -0,0 +1,14 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Retrieve%20a%20ticket%20from%20Zendesk%20Service%20based%20on%20the%20ticket%20severity_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: + - [Zendesk Service](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-zendesk-service) +3. To start the flow, in the banner, click **Start flow**. + + +Use this API template to retrieve tickets from Zendesk Service at regular intervals based on the ticket severity. + + + + + diff --git a/resources/markdown/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity_instructions.md b/resources/markdown/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity_instructions.md new file mode 100644 index 000000000..8aa4418ad --- /dev/null +++ b/resources/markdown/Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity_instructions.md @@ -0,0 +1,20 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Send%20a%20Gmail%20message%20to%20the%20assignee%20based%20on%20the%20retrieved%20Zendesk%20Service%20ticket%20severity_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: + - [HTTP](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-http) + - [Gmail](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-gmail) +3. To start the flow, in the banner, click **Start flow**. + + +Use this template to invoke an HTTP method to get the retrieved Zendesk Service tickets and send a Gmail message to the assignee to inform them of the status of the ticket. + +This is a sequel flow for 'Retrieve a ticket from Zendesk Service based on the ticket severity' template. + +Ensure that you specify the complete URL path of the 'Retrieve a ticket from Zendesk Service based on the ticket severity' template. + + + + + + diff --git a/resources/markdown/Send a Gmail message when a new sales rule coupon is created in Magento_instructions.md b/resources/markdown/Send a Gmail message when a new sales rule coupon is created in Magento_instructions.md new file mode 100644 index 000000000..3768649e5 --- /dev/null +++ b/resources/markdown/Send a Gmail message when a new sales rule coupon is created in Magento_instructions.md @@ -0,0 +1,16 @@ +To refer to these instructions while editing the flow, open the [GitHub page](https://github.com/ot4i/app-connect-templates/tree/main/resources/markdown/Send%20a%20Gmail%20message%20when%20a%20new%20sales%20rule%20coupon%20is%20created%20in%20Magento_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: + - [Magento](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-magento) + - [Gmail](https://www.ibm.com/docs/en/app-connect/containers_cd?topic=apps-gmail) +3. To start the flow, in the banner, click **Start flow**. + + +Use this API template to create a new sales rule coupon in Magento and send the coupon details to the customer via Gmail message. + + + + + + diff --git a/resources/template-metadata.json b/resources/template-metadata.json index a8b9f49f1..8710dbc1e 100644 --- a/resources/template-metadata.json +++ b/resources/template-metadata.json @@ -2878,6 +2878,78 @@ "targetApps": ["gmail"], "tags": ["salesforce", "gmail", "if"], "offerings": ["app connect professional"] + }, +{ + "name": "Create a job requisition in Workday when a new row is appended in Microsoft Excel Online", + "description": "Use this template to create a job requisition in Workday whenever a new row is appended in Microsoft Excel Online. In this example, if the budget amount is less than a specific amount, an HTTP method is invoked to create a job requisition in Workday. This is a sequel flow for 'Create a job requisition in Workday' template.", + "summary": "Microsoft Excel Online to HTTP", + "sourceApp": "msexcel", + "targetApps": ["http"], + "tags": ["msexcel", "http"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create a job requisition in Workday", + "description": "Use this API template to create a job requistion in Workday.", + "summary": "API flow using 1 application", + "sourceApp": "api", + "targetApps": ["workday"], + "tags": ["api", "workday"], + "offerings": ["app connect professional"] +}, +{ + "name": "Create an event in Google Calendar for each registered Eventbrite event attendee", + "description": "Use this template to create an event in Google Calendar for each registered Eventbrite event attendee. In this example, a Google Calendar event is sent to each of the newly registered Eventbrite attendees.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["eventbrite", "eventbrite", "googlecalendar"], + "tags": ["scheduler", "eventbrite", "googlecalendar"], + "offerings": ["app connect professional"] +}, +{ + "name": "Integrate data between Box files and Microsoft Azure Blob storage", + "description": "Use this template to create a scheduler-based flow that retrieves CSV-type file metadata from Box for a specified time. For each Box file, the file content is retrieved in text format, and the content is appended into a Microsoft Azure Blob storage container.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["box", "box", "azureblobstorage"], + "tags": ["scheduler", "box", "azureblobstorage"], + "offerings": ["app connect professional"] +}, +{ + "name": "Invoke an HTTP method for each item retrieved from a new sales order created using Magento", + "description": "Use this template to invoke a method for each item retrieved from a new sales order created using Magento. In this example, when a new sales order is created, an HTTP method is invoked, which sends a request to a client URL to get the customer email details.", + "summary": "Magento to HTTP", + "sourceApp": "magento", + "targetApps": ["http"], + "tags": ["magento", "http"], + "offerings": ["app connect professional"] +}, +{ + "name": "Retrieve a ticket from Zendesk Service based on the ticket severity", + "description": "Use this API template to retrieve tickets from Zendesk Service at regular intervals based on the ticket severity.", + "summary": "API flow using 1 application", + "sourceApp": "api", + "targetApps": ["zendeskservice"], + "tags": ["api", "zendeskservice"], + "offerings": ["app connect professional"] +}, +{ + "name": "Send a Gmail message to the assignee based on the retrieved Zendesk Service ticket severity", + "description": "Use this template to invoke an HTTP method to get the retrieved Zendesk Service tickets and send a Gmail message to the assignee to inform them of the status of the ticket. This is a sequel flow for 'Retrieve a ticket from Zendesk Service based on the ticket severity' template.", + "summary": "Scheduler to 2 applications", + "sourceApp": "streaming-connector-scheduler", + "targetApps": ["http", "gmail"], + "tags": ["scheduler", "http", "gmail"], + "offerings": ["app connect professional"] +}, +{ + "name": "Send a Gmail message when a new sales rule coupon is created in Magento", + "description": "Use this API template to create a new sales rule coupon in Magento and send the coupon details to the customer via Gmail message.", + "summary": "API flow using 2 applications", + "sourceApp": "api", + "targetApps": ["magento", "gmail"], + "tags": ["api", "magento", "gmail"], + "offerings": ["app connect professional"] } ] }