Netskope LogoNetskope Logo
  • Security Services
  • AI Services
  • Networking Services
  • Analytics Services
  • Integrations
  • getting-started.svgGetting Started
    • Support
    • Community
    • Netskope.com
    © 2026 All Rights Reserved. Netskope Inc.
    Home
    Netskope Cloud Exchange
    Risk Exchange Module
    Configure 3rd-party Risk Exchange Plugins
    Zylo Plugin for Risk Exchange

    Zylo Plugin for Risk Exchange

    This document explains how to configure the Zylo v1.0.0 plugin with the Risk Exchange module of the Netskope Cloud Exchange platform. This plugin is used to fetch applications from the Inventory > Applications page in Zylo. The plugin does not support performing any actions on applications in Zylo.

    Prerequisites

    To complete this integration, you need:

    • A Netskope tenant (or multiple, for example, production and development/test instances).
    • A Netskope Cloud Exchange tenant with the Tenant plugin and Risk Exchange plugin already configured.
    • Connectivity to the Zylo platform (https://app.zylo.com)
    Zylo Plugin Support

    This plugin is used to fetch applications from the Inventory > Applications page in Zylo. The plugin does not support performing any actions on applications in Zylo.

    Type of data pulledApplications
    Actions SupportedNo Action
    Mappings

    Mappings are used to view the pulled Hosts and their respective details. Fields mapped during plugin configuration are visible on the Records page after the data is pulled. Here are the suggested mappings that should be used while configuring the plugin.

    Pull Mappings
    Netskope CE FieldsZylo API FieldsSuggested Field LabelSuggested Aggregate Strategy
    Subscription IDidSubscription IDUnique
    Application IDappIdApplication IDAppend
    Application DescriptionappDescriptionApplication DescriptionAppend
    Application NamenameApplication NameAppend
    Launch URLlaunchUrlLaunch URLAppend
    TagstagsTagsAppend
    Application Owner Emailowners.appApplication Owner EmailAppend
    Business Owner Emailowners.businessBusiness Owner EmailAppend
    IT Owners Emailowners.itIT Owners EmailAppend
    StatusstatusStatusAppend
    Permissions

    Read Only

    API Details
    List of APIs used
    API EndpointMethodUse Case
    v1/subscriptionsGETFetch Applications
    Fetch Applications

    API Endpoint: https://api.zylo.com/v1/subscriptions

    Method: GET

    Headers

    KeyValue
    AuthorizationBearer <API Token>

    Params

    KeyValue
    pageSize1
    pageToken<next_page_token> or null

    Sample API Response

    {
        "nextPageToken": "MQ==",
        "subscriptions": [
            {
                "appId": "application/669fcc2b-c4a2-4b72-aed2-2f2dbe22f428",
                "appDescription": "1Password is a password management tool that securely stores and organizes passwords, credit card information, and other sensitive data. It helps users create strong, unique passwords for all their accounts and access them with a single master password.",
                "id": "subscription/891a2dd1-d22e-4583-8107-29bb7b6ed218",
                "name": "1Password",
                "createTime": "2020-08-03T23:59:57.624Z",
                "updateTime": "2024-12-31T08:37:05.186Z",
                "category": "IT Infrastructure",
                "subcategory": "Identity Management",
                "status": "active",
                "businessUnit": "IT",
                "ssoEnforced": false,
                "launchUrl": "1password.com",
                "sources": [
                    "Batch Expense Import"
                ],
                "itSupported": false,
                "type": "monthly",
                "businessGoals": "",
                "tags": [
                    "Unsanctioned",
                    "sanctioned"
                ],
                "supplierName": "Agilebits",
                "holdsPii": false,
                "notes": [],
                "functionalities": [
                    "Password Management"
                ],
                "cloud": true,
                "nextAction": null,
                "trueUp": null,
                "primaryContract": {
                    "startDate": "2024-02-17T00:00:00.000Z",
                    "contractEndDate": null,
                    "totalContractValue": {
                        "currencyCode": "USD",
                        "amount": 3894
                    },
                    "billFrequency": "monthly",
                    "cancellationNotificationLength": 0,
                    "licensesPurchased": 178
                },
                "usageStats": {
                    "uniqueActiveUsers": 143,
                    "uniqueProvisionedUsers": 178,
                    "activityThreshold": 90,
                    "provisionedUsers": 0,
                    "activeUsers": 0,
                    "percentActiveUsers": 0.8033707865168539,
                    "percentLicensesProvisioned": 1
                },
                "payment": {
                    "yearToDateSpend": 3894,
                    "annualSpend": {
                        "currencyCode": "USD",
                        "amount": 3894
                    },
                    "apSpend": {
                        "currencyCode": "USD",
                        "amount": 0
                    },
                    "expenseSpend": {
                        "currencyCode": "USD",
                        "amount": 3894
                    },
                    "lastTransactionDate": "2024-11-12T00:00:00.000Z",
                    "lastApTransactionDate": null,
                    "lastExpenseTransactionDate": "2024-11-12T00:00:00.000Z",
                    "numberOfTransactions": 10,
                    "numberOfUsersExpensing": 10,
                    "numberOfCostCenters": 6,
                    "primaryCostCenter": {
                        "name": "Cost of Goods Sold",
                        "annualSpend": {
                            "currencyCode": "USD",
                            "amount": 1168.2
                        },
                        "numberOfCostCenters": 6
                    }
                },
                "owners": {
                    "app": "hailey.stracke@klowd.io",
                    "business": "florencehorton@klowd.io",
                    "it": "adalberto.heller@klowd.io"
                },
                "customFields": [
                    {
                        "key": "default_category",
                        "value": "IT Infrastructure"
                    },
                    {
                        "key": "default_subcategory",
                        "value": "Identity Management"
                    },
                    {
                        "key": "external_id",
                        "value": null
                    },
                    {
                        "key": "search_terms",
                        "value": "\n1Password\n1Password\nAgilebits\nhailey.stracke@klowd.io\nflorencehorton@klowd.io\nadalberto.heller@klowd.io"
                    },
                    {
                        "key": "custom_values",
                        "value": {
                            "renewalOwner": null,
                            "renewalStatus": null
                        }
                    },
                    {
                        "key": "realized_savings",
                        "value": null
                    },
                    {
                        "key": "identified_savings",
                        "value": null
                    },
                    {
                        "key": "last_contract_expiration_date",
                        "value": null
                    },
                    {
                        "key": "number_of_active_contracts",
                        "value": 1
                    },
                    {
                        "key": "realized_avoidance",
                        "value": null
                    },
                    {
                        "key": "identified_avoidance",
                        "value": null
                    },
                    {
                        "key": "total_contract_line_value",
                        "value": 3893.76
                    },
                    {
                        "key": "contract_status",
                        "value": "active"
                    },
                    {
                        "key": "inactive_user_count",
                        "value": null
                    },
                    {
                        "key": "users_not_in_employee_roster",
                        "value": null
                    },
                    {
                        "key": "renewalOwner",
                        "value": null
                    },
                    {
                        "key": "renewalStatus",
                        "value": null
                    },
                    {
                        "key": "current_fiscal_year_q_1_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_2_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_3_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_4_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_1_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_2_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_3_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_4_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_1_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_2_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_3_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_4_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_1_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_2_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_3_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_4_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_1_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_2_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_3_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_q_4_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_1_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_2_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_3_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_q_4_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "current_fiscal_year_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_ap_spend",
                        "value": 0
                    },
                    {
                        "key": "last_fiscal_year_expense_spend",
                        "value": 0
                    },
                    {
                        "key": "current_and_last_fiscal_quarter_spend",
                        "value": 0
                    },
                    {
                        "key": "last_2_fiscal_quarters_spend",
                        "value": 0
                    },
                    {
                        "key": "last_3_fiscal_quarters_spend",
                        "value": 0
                    },
                    {
                        "key": "current_and_last_2_fiscal_quarters_spend",
                        "value": 0
                    },
                    {
                        "key": "current_and_last_3_fiscal_quarters_spend",
                        "value": 0
                    },
                    {
                        "key": "current_and_last_fiscal_year_spend",
                        "value": 0
                    },
                    {
                        "key": "current_and_last_2_fiscal_years_spend",
                        "value": 0
                    },
                    {
                        "key": "last_2_fiscal_years_spend",
                        "value": 0
                    },
                    {
                        "key": "last_3_fiscal_years_spend",
                        "value": 0
                    }
                ]
            }
        ]
    }
    Performance Matrix

    Below is the performance matrix conducted on a Large CE Stack with below-mentioned specifications by pulling 500K applications.

    Stack detailsSize: Large

    RAM: 32 GB

    CPU: 16 Cores

    Time taken to store the pulled and updated applications records~15 mins
    User Agent

    netskope-ce-5.1.0-cre-zylo–v1.0.0

    Workflow

    1. Get your Zylo Token ID and Token Secret.
    2. Configure the Zylo plugin.
    3. Add a Risk Exchange Business Rule for Zylo.
    4. Add Risk Exchange Actions for Zylo.
    5. Validate the Zylo plugin.

    Click play to watch a video.

     

    Get your Token ID and Token Secret

    1. Log in to Zylo and click the username icon in the top right corner.
    2. Click Admin and go to the Company Tokens tab.
    3. Click Request Token and provide the Token Name and Token Scope. Select Read Only in the Token Scope, and click Submit.
    4. Copy the Token ID and Token Secret; these are used to configure the Zylo plugin.

    Configure the Zylo Plugin

    1. Log in to Cloud Exchange and go to Settings > Plugins. Search for and select the Zylo v1.0.0 (CRE) plugin box.
    2. Add a plugin configuration name, and change sync interval if needed.
    3. Click Next. Enter your Token ID and Token Secret.
    4. Click Next. Select the Applications Entity from the Entity dropdown, and enter the field mappings per your requirements.
    5. Click Save.

    Add a Risk Exchange Business Rule for Zylo

    1. In Risk Exchange, go to Business Rules.
    2. Click Create New Rule in the top right corner.
    3. Enter a Rule Name. Select the Entity for the Field Mappings configured for the Zylo plugin, and configure the query based on your requirements.
    4. Click Save.

    Add a Risk Exchange Action for Zylo

    No Action

    No action will be performed for this action. You can generate UBA alerts in Ticket Orchestrator by using this action, and enabling the Generate Alerts toggle.

    1. In Risk Exchange, go to Actions and click Add Action Configuration.
    2. Select a Business Rule and Target Plugin. For the Action, select No Action.
      A screenshot of a computer

AI-generated content may be incorrect.
    3. If only No Action is performed for a plugin, make sure to enable the Ticket Orchestrator module for generating the alerts.
    4. To perform Netskope actions on the applications pulled from Zylo, refer to the Netskope Risk exchange plugin guide.

    Validate the Zylo Plugin

    Validate on CE

    To validate the pulling, follow these steps:

    Go to Risk Exchange and click Records. Select the Entity that was selected while configuring the field mappings for Applications to view the pulled apps.

    Go to Logging to check the pulled records via logs. Filter the logs using the plugin name, like CRE Zylo.

    Validate on Zylo

    To validate the records pulled from Zylo, log in to Zylo and go to Inventory > Applications.

    Troubleshooting the Zylo Plugin

    Unable to configure the plugin

    If you are unable to configure the CRE Zylo plugin, it could be due to providing an incorrect Token ID or Token Secret.

    What to do: To get the Token ID andToken Secret, follows the steps mentioned above in Get Token ID and Token Secret.

    Unable to pull Application

    If you are unable to pull Hosts from the CRE Zylo plugin, it could be due to one of these reasons:

    • No apps are present on the platform.
    • An error is received while pulling an application from the platform.
    • Mapping is not added while configuring the plugin in the entity source page.

    What to do:

    1. Check if you have data available on Zylo to pull.
    2. Check the logs from Logging if you have received any error in the plugin workflow.
    3. Check the plugin configuration, and make sure the mapping is added in the plugin in order to pull the application records.
    In this Topic
    • Zylo Plugin for Risk Exchange