Create a Groundplex

POST /snaplex

Overview

This API creates a Groundplex.

Prerequisites

  • Environment (Org) admin permissions

Request

   POST https://{controlplane_path}/api/1/rest/public/snaplex

Path parameters

Key Description
controlplane_path Required. The path to the SnapLogic control plane: elastic.snaplogic.com
For the UAT or EMEA control plane, substitute the name for elastic. For example:
  • uat.elastic.snaplogic.com
  • emea.snaplogic.com

Query parameters

None.

Request header

Basic authentication

In the request header, specify Basic for authorization, add your credentials (Login and password of your SnapLogic user or service account), and specify application/json for content type. For more details on accounts refer to Manage accounts.


Authorization: Basic {base64_encoded <email>:<password>}
Content-Type: application/json
          

Example of Basic authenthication using Postman

Request body

Required fields

   {
    "container_path":"/SL/shared",
    "container_type":"regular",
    "label":"Testplex",
    "environment":"TestEnviroment",
    "min_jcc":1,
  }                  

Notification settings

   {                
    "notification":{
    "recipients":"[email protected]",
    "slack_recipients":{
    "user":"[email protected]",
    "channel":"test"  
    }
   }
  }
Create Snaplex dialog - Classic Manager Create Snaplex page - Admin Manager

Create Snaplex



Dynamic settings

   {  
     "dynamic_settings":{
     "log":{
     "level":"debug",
     "max_file_size":"500 MB",
     "main_backup_count":40,
     "error_backup_count":5,
     "access_backup_count":5
      
     }
    }
   }                
Dynamic settings (Logging Tab) - Classic Manager Dynamic settings (Logging Tab) - Admin manager

Logging Tab


Logging Tab

Node settings

    "node_settings":{
   "published":{
      "heap":{"max_size":"auto"},
      "jetty_host":"127.0.0.1",
      "jetty_port":8090,
      "cc_secure_port":null,
      "http":{
         "proxyHost":"",
         "proxyPort":null,
         "proxyUser":"",
         "nonProxyHosts":[],
         "proxyPassword":""
      },
      "https":{
         "proxyHost":"",
         "proxyPort":null,
         "proxyUser":"",
         "nonProxyHosts":[],
         "proxyPassword":""
      },
      "nodes":[
         {"server-type":"jcc", "hostname":"122.11.11"},
         {"server-type":"feed_master", "hostname":"127.111.1"}
      ]
   },
   "extra":[{'key': 'hello', 'value': 'world'}]
   }
  }
}
Node settings - Classic Manager Node settings - Admin Manager

Update Manager



Key Type Description
container_path string The path to the Snaplex.
label string The name of the Snaplex.
environment string The environment of the Snaplex.
min_jcc string The minimum number of JCC nodes in the Snaplex.
pkg_version string The SnapLogic package version that is installed in the Snaplex.
notification string A comma-separated list of email addresses to send notifications to.
reserved_slots string The percent of slots to reserve for interactively executed pipelines.
max_slots string The maximum number of slots available on the Snaplex nodes.
max_mem string The maximum percent of memory that can be in use on the Snaplex nodes before they are considered overloaded.
node_settings array The settings for the nodes in the Snaplex.
restart_max_waiting_time integer The maximum waiting time for a JCC restart if a pipeline is running.
feed_master_load_balancer string The URL to the FeedMaster nodes which serves as the Load Balancer (Ultra Load Balancer in the UI).
jcc_load_balancer string The URL to the JCC node which serves as the load balancer.
dynamic_settings string Settings that can be changed on the JCC without requiring a restart.
duplicate_check Boolean

If true, throws an exception if a Snaplex with the same name already exists at the destination path.

If false, overwrites any existing Snaplex with the same name at the destination path.

Default: true

Important: The parameters container_path, container_type, label, and environment are required/non-optional.

The parameters container_type, cluster_details, plexfs_min_free, plexfs_retention_time, queue_size, Org can have a default value which is not visible in the UI or accessible by a public API.

Response

Response body

     {
      "response_map": 
      {
        "snode_id": "660d9dcabee896d1fb6ebafb"
      },
      "http_status_code": 201
    }