Geneos REST API

REST API plug-in

Operations 6

PUT /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview} Create or update a dataview #
DELETE /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview} Delete a dataview #
PUT /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview}/row/{row} Create or update a row #
DELETE /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview}/row/{row} Delete a row #
PUT /managedEntity/{me}/sampler/{sampler}(type)/stream/{stream} Create or update a stream #
GET /healthcheck Get health check #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/geneos-rest-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

geneos-rest-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Netprobe REST REST API
  version: 1.0.0
  description: '## Overview


    This is the REST API of the Netprobe.'
  contact:
    url: http://www.itrsgroup.com
tags:
- name: REST API
  description: REST API plug-in
paths:
  /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview}:
    parameters:
    - name: Column-Order
      description: "Specifies the order of the columns that appear in the dataview based on the fields on the JSON response.\n\nThe value should be a comma-separated list of JSON field names and contain at least one field.\n\n-   The fields appear on the dataview in the order that you define. That is, the first field appears as the first column, the second field appears as the second column, and so on.\n-   You do not need to define all possible fields when using `Column-Order`. However, only those fields that you define are guaranteed to follow an order.\n-   If you define a field in the `Column-Order`, and this field does not appear in the JSON response, then the JSON response displays normally on the dataview, but the column for the missing field is not displayed. In addition, the Netprobe returns a warning message in the log.\n\nThis parameter only applies to the PUT operation. Setting it for other operations will have no effect.\n#### Note: \n  When you update the column order for an existing dataview, the dataview does not reflect the change immediately. To see the updated column order, click away from the Metrics dockable on the Active Console 2, then click the Metrics dockable again."
      schema:
        type: array
        items:
          type: string
      in: header
      required: false
    - name: me
      description: Name of the managed entity associated with the REST API sampler.
      schema:
        type: string
      in: path
      required: true
    - name: sampler
      description: Name of the REST API sampler to push content to.
      schema:
        type: string
      in: path
      required: true
    - name: type
      description: 'Name of the type that a sampler falls under.


        This field is required if a sampler falls under a type and is not unique (for example, if two samplers under different types share the same name).


        The open and close parentheses `(` and `)` surrounding the type name are required in the endpoint.'
      schema:
        type: string
      in: path
      required: false
    - name: dataview
      description: 'Name of the dataview to be created, updated, or deleted.

        #### Note:

        You cannot use the name "Streams Dataview" as a dataview name. This name is reserved for displaying stream information on the REST API plug-in. For more information, see [Dataview for Streams in the REST API Plug-in Technical Reference](https://docs.itrsgroup.com/docs/geneos/4.13.0/Netprobe/api/rest-api-plug-in-tr.html#dataview-for-streams). '
      schema:
        type: string
      in: path
      required: true
    put:
      tags:
      - REST API
      responses:
        '200':
          description: Updates the dataview with payload
        '400':
          description: 'Resource found, but unable to update


            Reason Phrase

            - Unable to create or update dataview

            - Request has no body'
        '404':
          description: Unable to create resource
        '500':
          description: Failed to create update dataview due to server error (e.g. unhandled null pointer exception)
      summary: Create or update a dataview
      description: 'Creates a new dataview to output the JSON content being received.


        If the dataview name already exists, then the sampler updates the existing dataview.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GeneosDataview'
            examples:
              Create or Update Dataview:
                value:
                - column1: dataA1
                  column2: dataA2
                  column3: dataA3
                - column1: dataB1
                  column2: dataB2
                  column3: dataB3
                - column1: dataC1
                  column2: dataC2
                  column3: dataC3
        required: true
      operationId: putManagedEntityByMeSampler{sampler}(type)DataviewByDataview
      x-operation-id-source: derived
    delete:
      tags:
      - REST API
      responses:
        '200':
          description: Deleted
      summary: Delete a dataview
      description: Deletes an existing dataview.
      operationId: deleteManagedEntityByMeSampler{sampler}(type)DataviewByDataview
      x-operation-id-source: derived
  /managedEntity/{me}/sampler/{sampler}(type)/dataview/{dataview}/row/{row}:
    parameters:
    - name: me
      description: Name of the managed entity associated with the REST API sampler.
      schema:
        type: string
      in: path
      required: true
    - name: sampler
      description: Name of the REST API sampler where the dataview is located
      schema:
        type: string
      in: path
      required: true
    - name: type
      description: 'Name of the type that a sampler falls under.


        This field is required if a sampler falls under a type and is not unique (for example, if two samplers under different types share the same name).


        The open and close parentheses `(` and `)` surrounding the type name are required in the endpoint.'
      schema:
        type: string
      in: path
      required: false
    - name: dataview
      description: 'Name of the dataview containing the row to be added, updated, or deleted.


        The dataview must exit. Otherwise, the request will fail.

        #### Note:

        You cannot use "Streams Dataview" as a dataview name. This name is reserved for displaying stream information on the REST API plug-in. For more information, see [Dataview for Streams in the REST API Plug-in Technical Reference](https://docs.itrsgroup.com/docs/geneos/4.13.0/Netprobe/api/rest-api-plug-in-tr.html#dataview-for-streams). '
      schema:
        type: string
      in: path
      required: true
    - name: row
      description: 'Name of the row to be added, updated, or deleted.


        When deleting a row, the row name must already exist. Otherwise, the request will fail.


        If multiple rows share the same name, then the plug-in deletes the first row it finds that matches the name. This includes rows that the Netprobe tags as duplicates.'
      schema:
        type: string
      in: path
      required: true
    put:
      tags:
      - REST API
      responses:
        '200':
          description: Row updated
        '400':
          description: 'Row found but unable to update


            Reason Phrase

            - Unable to create or update row

            - Request has no body'
        '404':
          description: Unable to create new row
        '500':
          description: Server error (e.g. null pointer exception)
      summary: Create or update a row
      description: 'Creates a new row on an existing dataview. The new row appears with the content of the HTTP body.


        If the row name already exists, then the sampler updates the existing row.'
      operationId: putManagedEntityByMeSampler{sampler}(type)DataviewByDataviewRowByRow
      x-operation-id-source: derived
    delete:
      tags:
      - REST API
      responses:
        '200':
          description: Row deleted successfully.
      summary: Delete a row
      description: 'Deletes an existing row from the dataview.


        If multiple rows share the same name, then the plug-in deletes the first row it finds that matches the name. This includes rows that the Netprobe tags as duplicates.


        When you delete a row, you do not need to specify the HTTP body. Any content in the HTTP body is ignored.'
      operationId: deleteManagedEntityByMeSampler{sampler}(type)DataviewByDataviewRowByRow
      x-operation-id-source: derived
  /managedEntity/{me}/sampler/{sampler}(type)/stream/{stream}:
    parameters:
    - name: me
      description: Name of the managed entity associated with the REST API sampler.
      schema:
        type: string
      in: path
      required: true
    - name: sampler
      description: Name of the REST API sampler to push content to.
      schema:
        type: string
      in: path
      required: true
    - name: type
      description: 'Name of the type that a sampler falls under.


        This field is required if a sampler falls under a type and is not unique (for example, if two samplers under different types share the same name).


        The open and close parentheses `(` and `)` surrounding the type name are required in the endpoint.'
      schema:
        type: string
      in: path
      required: false
    - name: stream
      description: Name of the stream to be created or updated.
      schema:
        type: string
      in: path
      required: true
    put:
      tags:
      - REST API
      responses:
        '200':
          description: Written to stream
        '400':
          description: 'Stream exists, but unable to update


            Reason Phrase

            - Request has no body

            - Stream exists, but unable to update'
        '404':
          description: Unable to create stream
      summary: Create or update a stream
      description: 'Publishes data to Netprobe streams. Netprobe streams can be used in FKM samplers to scan for keywords and generate alerts.


        This endpoint can receive any message type. If the stream name already exists, then the sampler updates the existing stream.'
      requestBody:
        content:
          text/plain:
            schema:
              type: array
              items:
                type: string
            examples:
              Plain text:
                value: 'This is a valid payload for the stream endpoint

                  This is the 2nd line

                  Multiple lines are supported'
        required: true
      operationId: putManagedEntityByMeSampler{sampler}(type)StreamByStream
      x-operation-id-source: derived
  /healthcheck:
    get:
      tags:
      - REST API
      responses:
        '200':
          description: There is at least one REST API sampler that is configured on the Netprobe and is accepting connections.
        '500':
          description: A REST API sampler may be running, but is not ready.
      summary: Get health check
      description: 'Queries the REST API server for availability.

        If the server returns a 200 HTTP response code, then it means...


        - One or more REST API samplers are configured to run on the Netprobe.

        - A REST API sampler is ready to accept messages.'
      operationId: getHealthcheck
      x-operation-id-source: derived
components:
  schemas:
    GeneosDataview:
      title: Root Type for GeneosDataview
      description: Geneos Dataview
      type: array
      items:
        type: object
      example: "[\n{\n \"trace_id\": 1989548194574808800,\n \"name\": \"servlet.request\",\n \"type\": \"web\",\n \"status\": \"200\",\n \"duration\": 1004252,\n \"url\": \"http://localhost:8080/bg-button.png\",\n \"thread\": \"http-nio-8080-exec-7\"\n},\n{\n \"trace_id\": 8421096758666453000,\n \"name\": \"servlet.request\",\n \"type\": \"web\",\n \"status\": \"200\",\n \"duration\": 901195,\n \"url\": \"http://localhost:8080/bg-middle.png\",\n \"thread\": \"http-nio-8080-exec-8\"\n}\n]"