Class: LoopsSdk::Workflows
Class Method Summary collapse
- .add_branch(workflow_id:, node_id:, expected_revision_id:) ⇒ Object
- .change_mailing_list(workflow_id:, expected_revision_id:, mailing_list_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
- .create(name:, description: nil, mailing_list_id: nil) ⇒ Object
- .create_node(workflow_id:, expected_revision_id:, insert_mode:, node_type_name:, from_node_id: nil, to_node_id: nil, before_node_id: nil) ⇒ Object
- .delete_node(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
- .delete_node_recursive(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
- .get(workflow_id:) ⇒ Object
- .get_node(workflow_id:, node_id:) ⇒ Object
- .list(perPage: 20, cursor: nil) ⇒ Object
- .update(workflow_id:, expected_revision_id:, name: nil, description: nil) ⇒ Object
- .update_node(workflow_id:, node_id:, expected_revision_id:, payload:) ⇒ Object
Class Method Details
.add_branch(workflow_id:, node_id:, expected_revision_id:) ⇒ Object
90 91 92 93 |
# File 'lib/loops_sdk/workflows.rb', line 90 def add_branch(workflow_id:, node_id:, expected_revision_id:) body = { expectedRevisionId: expected_revision_id } make_request(method: :post, path: "v1/workflows/#{workflow_id}/nodes/#{node_id}/add-branch", body: body) end |
.change_mailing_list(workflow_id:, expected_revision_id:, mailing_list_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/loops_sdk/workflows.rb', line 34 def change_mailing_list(workflow_id:, expected_revision_id:, mailing_list_id:, dry_run: nil, queued_contact_policy: nil) body = { expectedRevisionId: expected_revision_id, mailingListId: mailing_list_id, dryRun: dry_run, queuedContactPolicy: queued_contact_policy }.compact # expectedRevisionId and mailingListId may be null; always include them body[:expectedRevisionId] = expected_revision_id body[:mailingListId] = mailing_list_id make_request(method: :post, path: "v1/workflows/#{workflow_id}/mailing-list", body: body) end |
.create(name:, description: nil, mailing_list_id: nil) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/loops_sdk/workflows.rb', line 10 def create(name:, description: nil, mailing_list_id: nil) body = { name: name, description: description, mailingListId: mailing_list_id }.compact make_request(method: :post, path: "v1/workflows", body: body) end |
.create_node(workflow_id:, expected_revision_id:, insert_mode:, node_type_name:, from_node_id: nil, to_node_id: nil, before_node_id: nil) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/loops_sdk/workflows.rb', line 51 def create_node( workflow_id:, expected_revision_id:, insert_mode:, node_type_name:, from_node_id: nil, to_node_id: nil, before_node_id: nil ) body = { expectedRevisionId: expected_revision_id, insertMode: insert_mode, nodeTypeName: node_type_name, fromNodeId: from_node_id, toNodeId: to_node_id, beforeNodeId: before_node_id }.compact body[:expectedRevisionId] = expected_revision_id make_request(method: :post, path: "v1/workflows/#{workflow_id}/nodes", body: body) end |
.delete_node(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
80 81 82 83 84 85 86 87 88 |
# File 'lib/loops_sdk/workflows.rb', line 80 def delete_node(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) body = { expectedRevisionId: expected_revision_id, dryRun: dry_run, queuedContactPolicy: queued_contact_policy }.compact body[:expectedRevisionId] = expected_revision_id make_request(method: :delete, path: "v1/workflows/#{workflow_id}/nodes/#{node_id}", body: body) end |
.delete_node_recursive(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) ⇒ Object
95 96 97 98 99 100 101 102 103 |
# File 'lib/loops_sdk/workflows.rb', line 95 def delete_node_recursive(workflow_id:, node_id:, expected_revision_id:, dry_run: nil, queued_contact_policy: nil) body = { expectedRevisionId: expected_revision_id, dryRun: dry_run, queuedContactPolicy: queued_contact_policy }.compact body[:expectedRevisionId] = expected_revision_id make_request(method: :delete, path: "v1/workflows/#{workflow_id}/nodes/#{node_id}/recursive", body: body) end |
.get(workflow_id:) ⇒ Object
19 20 21 |
# File 'lib/loops_sdk/workflows.rb', line 19 def get(workflow_id:) make_request(method: :get, path: "v1/workflows/#{workflow_id}") end |
.get_node(workflow_id:, node_id:) ⇒ Object
47 48 49 |
# File 'lib/loops_sdk/workflows.rb', line 47 def get_node(workflow_id:, node_id:) make_request(method: :get, path: "v1/workflows/#{workflow_id}/nodes/#{node_id}") end |
.list(perPage: 20, cursor: nil) ⇒ Object
6 7 8 |
# File 'lib/loops_sdk/workflows.rb', line 6 def list(perPage: 20, cursor: nil) make_request(method: :get, path: "v1/workflows", params: { perPage: perPage, cursor: cursor }) end |
.update(workflow_id:, expected_revision_id:, name: nil, description: nil) ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/loops_sdk/workflows.rb', line 23 def update(workflow_id:, expected_revision_id:, name: nil, description: nil) body = { expectedRevisionId: expected_revision_id, name: name, description: description }.compact # expectedRevisionId may be null for older workflows; always include it body[:expectedRevisionId] = expected_revision_id make_request(method: :post, path: "v1/workflows/#{workflow_id}", body: body) end |
.update_node(workflow_id:, node_id:, expected_revision_id:, payload:) ⇒ Object
72 73 74 75 76 77 78 |
# File 'lib/loops_sdk/workflows.rb', line 72 def update_node(workflow_id:, node_id:, expected_revision_id:, payload:) body = { expectedRevisionId: expected_revision_id, payload: payload } make_request(method: :post, path: "v1/workflows/#{workflow_id}/nodes/#{node_id}", body: body) end |