### cURL Example for Uploading a Plugin (System-wide) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to upload a plugin available for all tenants using the Splunk Streams v3beta1 API. ```HTTP curl -X POST "https://{host}:31000/system/streams/v3beta1/plugins/{pluginId}/upload" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "pluginJar": "" }' ``` -------------------------------- ### cURL Example for Uploading a Plugin (Tenant-specific) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to upload a plugin for a specific tenant using the Splunk Streams v3beta1 API. ```HTTP curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/plugins/{pluginId}/upload" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "pluginJar": "" }' ``` -------------------------------- ### Register Plugin cURL Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to register a new plugin with the Splunk Streams API. ```HTTP curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/plugins" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "description": "", \ "name": "" \ }' ``` -------------------------------- ### Get Plugin cURL Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to retrieve a plugin by its ID from the Splunk Streams API. ```HTTP curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### cURL Example: Create DSP Connection Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to create a new DSP connection using the streams/v3beta1 API. ```HTTP curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/connections" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "connectorId": "", \ "data": {}, \ "description": "", \ "name": "" \ }' ``` -------------------------------- ### cURL Example for Retrieving Plugin Versions Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to retrieve available versions of a plugin using the Splunk Streams v3beta1 API. ```HTTP curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/plugins/{pluginId}/versions" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Get Latest Preview Session Metrics (cURL) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to retrieve the latest metrics for a Splunk Streams preview session. ```HTTP curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/preview-session/{previewSessionId}/metrics/latest" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### List Templates (cURL) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to list all Splunk Streams templates. ```HTTP curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/templates" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### cURL Example: Activate Pipeline Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to send a POST request to activate a Splunk pipeline, including path variables and a JSON request body. ```curl curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/{id}/activate" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "activateLatestVersion": true, \ "allowNonRestoredState": true, \ "skipRestoreState": true \ }' ``` -------------------------------- ### Create Template (cURL) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to create a Splunk Streams template. ```HTTP curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/templates" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "data": { "edges": [ { "sourceNode": "" } ] } }' ``` -------------------------------- ### Update Plugin cURL Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to update an existing plugin's information in the Splunk Streams API. ```HTTP curl -X PUT "https://{host}:31000/system/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "description": "", \ "name": "" \ }' ``` -------------------------------- ### Splunk Streams v3beta1 PATCH Plugin Request Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command for patching a plugin using the PATCH method in Splunk Enterprise Streams v3beta1. ```HTTP curl -X PATCH "https://{host}:31000/system/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "description": "", "name": "" }' ``` -------------------------------- ### cURL Example: Update DSP Connection Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to update an existing DSP connection using the streams/v3beta1 API. ```HTTP curl -X PUT "https://{host}:31000/{tenant}/streams/v3beta1/connections/{connectionId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "data": {}, \ "description": "", \ "name": "" \ }' ``` -------------------------------- ### cURL Example for Deleting a Plugin Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to delete a plugin using the Splunk Streams v3beta1 API. ```HTTP curl -X DELETE "https://{host}:31000/{tenant}/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Splunk Streams v3beta1 PUT Plugin Request Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command for updating a plugin using the PUT method in Splunk Enterprise Streams v3beta1. ```HTTP curl -X PUT "https://{host}:31000/{tenant}/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "description": "", "name": "" }' ``` -------------------------------- ### Splunk Streams V3beta1 Get Template API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves an individual template by its ID and version using the Splunk Streams V3beta1 API. Includes endpoint details, required scopes, path variables, query parameters, and cURL example. ```http GET /{tenant}/streams/v3beta1/templates/{templateId} Path Variables: Name | Description ---|--- tenant string | The tenant name. templateId string | Template ID Query Parameters: Name | Description ---|--- version integer | Template version cURL: curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/templates/{templateId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" Responses: Code | Description ---|--- 200 | Returns the template for a specified id. 400 | The request isn't well-formed or is incorrect. 401 | The user isn’t authenticated. 403 | The operation isn’t authorized. 404 | The resource wasn’t found. 409 | There is a conflict with the existing state of your resource. 415 | The media type isn't supported. 422 | The provided fields aren't valid 500 | An internal service error has occurred. Response Body Schema (json): { "createDate": , "createUserId": "", "data": { "edges": [ { "PipelineEdge" } ], "nodes": [ { "PipelineNode" } ], "attributes": { "": "" }, "migrationInfo": { "canMigrate": true | false, "createApiVersion": , "targetApiVersion": } }, "description": "", "name": "", "ownerTenantId": "", "templateId": "", "version": } ``` -------------------------------- ### Splunk Streams v3beta1: Get Pipeline Registry Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves all available functions in the Splunk pipeline registry. Supports GET requests. Requires 'streams.pipelines.read' scope. ```APIDOC GET /{tenant}/streams/v3beta1/pipelines/registry Description: Returns all functions in JSON format. Required Scope: streams.pipelines.read Path Variables: tenant string: The tenant name. Query Parameters: local boolean: local Responses: 200: Returns a list of functions. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { "categories": [ "" ], "functions": [ { "arguments": [], "attributes": {}, "op": "", "outputs": [], "resolvedId": "" } ] } ``` ```curl curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/registry" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` ```HTTP GET /{tenant}/streams/v3beta1/pipelines/registry HTTP/1.1 Host: {host}:31000 Authorization: Bearer Content-Type: application/json ``` -------------------------------- ### Get All Plugins API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index API endpoint to retrieve a list of all available plugins across all tenants. Supports pagination and sorting. Includes request details, scopes, and response schemas. ```APIDOC GET /system/streams/v3beta1/plugins Returns all the plugins that are available for all tenants. Required Scope: streams.plugins.read Query Parameters: Name | Description ---|--- offset | integer: offset pageSize | integer: pageSize sortField | string: sortField sortDir | string: sortDir Responses: Code | Description ---|--- 200 | Returns all the plugins. 400 | The request isn't well-formed or is incorrect. 401 | The user isn’t authenticated. 403 | The operation isn’t authorized. 404 | The resource wasn’t found. 409 | There is a conflict with the existing state of your resource. 415 | The media type isn't supported. 422 | The provided fields aren't valid 500 | An internal service error has occurred. Response Body Schema (json): { "items": [ { "description": "", "isDeleted": true | false, "lastUpdateDate": , "lastUpdateUserId": "", "name": "", "pluginId": "", "tenantId": "" } ], "total": } ``` ```curl curl -X GET "https://{host}:31000/system/streams/v3beta1/plugins" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Splunk Streams API: Get Preview Session Information Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves information about an existing preview session. Requires 'streams.pipelines.preview' scope. Supports GET requests with tenant and previewSessionId as path variables. ```APIDOC GET /{tenant}/streams/v3beta1/preview-session/{previewSessionId} Parameters: tenant (string): The tenant name. previewSessionId (string): Preview Session ID Scope: streams.pipelines.preview Responses: 200: Returns the state of a preview session. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. ``` -------------------------------- ### Splunk DSP Streams v3beta1 Connections API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index API documentation for retrieving a list of connections within the Splunk DSP Streams service. This includes details on required scopes, path variables, query parameters, and a cURL example for making the request. ```APIDOC GET /{tenant}/streams/v3beta1/connections Description: Returns a list of connections (latest versions only) by tenant ID. Required Scope: streams.connections.read Path Variables: Name | Description ---|--- tenant string | The tenant name. Query Parameters: Name | Description ---|--- connectorId array | functionId string | createUserId string | name string | offset integer | pageSize integer | sortField string | sortDir string | Specify either ascending ('asc') or descending ('desc') sort order for a given field (sortField), which must be set for sortDir to apply. Defaults to 'asc'. showSecretNames string | cURL Example: curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/connections" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` ```bash curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/connections" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Get Plugins for Tenant API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index API endpoint to retrieve a list of plugins for a specific tenant. Supports pagination and sorting. Includes request details, scopes, and response schemas. ```APIDOC GET /{tenant}/streams/v3beta1/plugins Returns all the plugins for a specified tenant id. Required Scope: streams.plugins.read Path Variables: Name | Description ---|--- tenant | string: The tenant name. Query Parameters: Name | Description ---|--- offset | integer: offset pageSize | integer: pageSize sortField | string: sortField sortDir | string: sortDir Responses: Code | Description ---|--- 200 | Returns all the plugins. 400 | The request isn't well-formed or is incorrect. 401 | The user isn’t authenticated. 403 | The operation isn’t authorized. 404 | The resource wasn’t found. 409 | There is a conflict with the existing state of your resource. 415 | The media type isn't supported. 422 | The provided fields aren't valid 500 | An internal service error has occurred. Response Body Schema (json): { "items": [ { "description": "", "isDeleted": true | false, "lastUpdateDate": , "lastUpdateUserId": "", "name": "", "pluginId": "", "tenantId": "" } ], "total": } ``` ```curl curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/plugins" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### cURL Example: Update Pipeline Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to send a PATCH request to update a Splunk pipeline, including path variables and a JSON request body. ```curl curl -X PATCH "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/{id}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ \ "bypassValidation": true, \ "createUserId": "", \ "data": { \ "edges": [ \ ] \ } \ }' ``` -------------------------------- ### Splunk Streams v3beta1 DELETE Plugin Request Example Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command for deleting a plugin using the DELETE method in Splunk Enterprise Streams v3beta1. ```HTTP curl -X DELETE "https://{host}:31000/system/streams/v3beta1/plugins/{pluginId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### cURL Example: Delete Pipeline Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example using cURL to send a DELETE request to remove a Splunk pipeline, specifying path variables. ```curl curl -X DELETE "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/{id}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Splunk Streams API: Preview Data Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves preview data for a given session. Requires 'streams.pipelines.preview' scope. Supports GET requests with tenant and previewSessionId as path variables. ```APIDOC GET /{tenant}/streams/v3beta1/preview-data/{previewSessionId} Parameters: tenant (string): The tenant name. previewSessionId (string): Preview Session ID Scope: streams.pipelines.preview Responses: 200: Returns a stream of data for preview. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { versionInfo: { createDate: , version: } } ``` -------------------------------- ### Splunk Streams V3beta1 Update Template API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Updates an existing template using the Splunk Streams V3beta1 API. Includes endpoint details, required scopes, path variables, and a partial cURL example for the request body. ```http PUT /{tenant}/streams/v3beta1/templates/{templateId} Path Variables: Name | Description ---|--- tenant string | The tenant name. templateId string | Template ID cURL: curl -X PUT "https://{host}:31000/{tenant}/streams/v3beta1/templates/{templateId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "data": { "edges": [ { "sourceNode": "", ... } ], ... }, ... }' ``` -------------------------------- ### Stop Preview Session (cURL) Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Example cURL command to stop a Splunk Streams preview session. ```HTTP curl -X DELETE "https://{host}:31000/{tenant}/streams/v3beta1/preview-session/{previewSessionId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Splunk Streams API: Get All Pipelines Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves a list of all pipelines. Supports filtering and sorting via query parameters. Requires 'streams.pipelines.read' scope. ```APIDOC GET /{tenant}/streams/v3beta1/pipelines Returns all pipelines. Required Scope: streams.pipelines.read Path Variables: tenant string: The tenant name. Query Parameters: offset integer: offset pageSize integer: pageSize sortField string: sortField sortDir string: sortDir activated boolean: activated createUserId string: createUserId name string: name includeData boolean: includeData Responses: 200: Returns a list of pipelines. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { items: [ { activatedDate: , activatedUserId: "", activatedVersion: , createDate: , createUserId: "", currentVersion: , data: { Pipeline }, description: "", id: "", lastUpdateDate: , lastUpdateUserId: "", name: "", status: "CREATED" | "ACTIVATED" | "FAILED" | "RESTARTING" | "FINISHED", statusMessage: "", streamingConfigurationId: , tenantId: "", validationMessages: [ [+] ], version: } ], total: } ``` ```HTTP curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/pipelines" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Splunk DSP Streams v3beta1 Files API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Provides endpoints for managing files within Splunk Enterprise DSP Streams. Supports listing all files, uploading new files, retrieving metadata for a specific file, and deleting files. Each operation specifies required scopes, path variables, cURL examples, request/response schemas, and possible HTTP status codes. ```APIDOC GET /{tenant}/streams/v3beta1/files Description: Returns files metadata. Required Scope: streams.files.read Path Variables: tenant (string): The tenant name. cURL Example: curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/files" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" Responses: 200: Returns files metadata. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { [-] FilesMetaDataResponse files: [ [-] { [-] UploadFile createdDate: , createdUserId: "", filename: "", id: "", sha256: "", tenantId: "" } ] } POST /{tenant}/streams/v3beta1/files Description: Upload new file. Required Scope: streams.files.create Path Variables: tenant (string): The tenant name. cURL Example: curl -X POST "https://{host}:31000/{tenant}/streams/v3beta1/files" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "file": "" }' Request Body Schema (json): { [-] // Upload file file*: "" } Responses: 201: Upload a file. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { [-] UploadFile createdDate: , createdUserId: "", filename: "", id: "", sha256: "", tenantId: "" } GET /{tenant}/streams/v3beta1/files/{fileId} Description: Get file metadata. Required Scope: streams.files.read Path Variables: tenant (string): The tenant name. fileId (string): File ID cURL Example: curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/files/{fileId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" Responses: 200: Returns files metadata. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { [-] UploadFile createdDate: , createdUserId: "", filename: "", id: "", sha256: "", tenantId: "" } DELETE /{tenant}/streams/v3beta1/files/{fileId} Description: Delete file. Required Scope: streams.files.delete Path Variables: tenant (string): The tenant name. fileId (string): File ID cURL Example: curl -X DELETE "https://{host}:31000/{tenant}/streams/v3beta1/files/{fileId}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" Responses: 204: File deleted successfully 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema: Empty ``` -------------------------------- ### Splunk Streams API Documentation Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Comprehensive API documentation for Splunk Streams, including endpoints for managing preview sessions and templates. This section details HTTP methods, request/response schemas, scopes, and parameters. ```APIDOC APIDOC: Stop Preview Session: Method: DELETE Endpoint: /{tenant}/streams/v3beta1/preview-session/{previewSessionId} Description: Stops a preview session. Required Scope: streams.pipelines.preview Path Variables: tenant (string): The tenant name. previewSessionId (string): Preview Session ID Responses: 204: The preview session was stopped successfully. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema: Empty Get Latest Preview Session Metrics: Method: GET Endpoint: /{tenant}/streams/v3beta1/preview-session/{previewSessionId}/metrics/latest Description: Returns the latest metrics for a preview session. Required Scope: streams.pipelines.preview Path Variables: tenant (string): The tenant name. previewSessionId (string): Preview Session ID Responses: 200: Returns the latest preview session metrics. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { "nodes": { "": { "metrics": {} } } } List Templates: Method: GET Endpoint: /{tenant}/streams/v3beta1/templates Description: Returns a list of all templates. Required Scope: streams.templates.read Path Variables: tenant (string): The tenant name. Query Parameters: offset (integer): offset pageSize (integer): pageSize sortField (string): sortField sortDir (string): sortDir Responses: 200: Returns a list of templates. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { "items": [ { "createDate": , "createUserId": "", "data": {}, "description": "", "name": "", "ownerTenantId": "", "templateId": "", "version": } ], "total": } Create Template: Method: POST Endpoint: /{tenant}/streams/v3beta1/templates Description: Creates a template for a tenant. Required Scope: streams.templates.create Path Variables: tenant (string): The tenant name. Request Body Schema (json): { "data": { "edges": [ { "sourceNode": "" } ] } } ``` -------------------------------- ### Splunk Streams API: Create Preview Session Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Creates a new preview session for a pipeline. Requires 'streams.pipelines.preview' scope. Supports POST requests with tenant as a path variable and a request body defining the pipeline configuration. ```APIDOC POST /{tenant}/streams/v3beta1/preview-session Parameters: tenant (string): The tenant name. Scope: streams.pipelines.preview Request Body Schema (json): { upl: { edges: [ { PipelineEdge } ], nodes: [ { PipelineNode } ], attributes: { : }, migrationInfo: { canMigrate: true | false, createApiVersion: , targetApiVersion: } }, recordsLimit: , recordsPerPipeline: , sessionLifetimeMs: } Responses: 201: The preview sessions was started successfully. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): { previewId: } ``` -------------------------------- ### Splunk DSP Streams API v3beta1 Connector Listing Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves a list of available connectors in the Splunk DSP Streams API v3beta1. Includes details on the endpoint, required scope, and response schema. ```APIDOC GET /{tenant}/streams/v3beta1/connectors tenant (string): The tenant name. Description: Returns a list of the available connectors. Required Scope: streams.connections.read Path Variables: tenant string: The tenant name. cURL Example: curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/connectors" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" Responses: 200: Returns a list of connectors. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. Response Body Schema (json): PaginatedResponseOfConnectorResponse: items: [ ConnectorResponse: config: {+} connectorType: "" description: "" functions: [+] hidden: true | false id: "" name: "" panelUrl: "" tag: "" ] total: ``` -------------------------------- ### Splunk DSP Streams v3beta1 API Endpoints Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index This section outlines the available API endpoints for managing plugins, preview data, preview sessions, and templates within the Splunk DSP Streams service. ```APIDOC GET /plugins POST /plugins GET /plugins/{pId} PUT /plugins/{pId} PATCH /plugins/{pId} DELETE /plugins/{pId} POST /plugins/{pId}/upload GET /plugins/{pId}/versions GET /preview-data/{pId} POST /preview-session GET /preview-session/{pId} DELETE /preview-session/{pId} GET /preview-session/{pId}/metrics/latest GET /templates POST /templates GET /templates/{tId} PUT /templates/{tId} PATCH /templates/{tId} DELETE /templates/{tId} ``` -------------------------------- ### Splunk Streams v3beta1: Get Pipeline Status Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves the status of pipelines from the underlying streaming system. Supports GET requests with optional query parameters for filtering and pagination. Requires 'streams.pipelines.read' scope. ```APIDOC GET /{tenant}/streams/v3beta1/pipelines/status Description: Returns the status of pipelines from the underlying streaming system. Required Scope: streams.pipelines.read Path Variables: tenant string: The tenant name. Query Parameters: offset integer: offset pageSize integer: pageSize sortField string: sortField sortDir string: sortDir activated boolean: activated createUserId string: createUserId name string: name Responses: 200: Returns the status of pipelines. 400: The request isn't well-formed or is incorrect. 401: The user isn’t authenticated. 403: The operation isn’t authorized. 404: The resource wasn’t found. 409: There is a conflict with the existing state of your resource. 415: The media type isn't supported. 422: The provided fields aren't valid 500: An internal service error has occurred. ``` ```curl curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/status?offset=0&pageSize=10" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` ```HTTP GET /{tenant}/streams/v3beta1/pipelines/status?offset=0&pageSize=10 HTTP/1.1 Host: {host}:31000 Authorization: Bearer Content-Type: application/json ``` -------------------------------- ### Splunk Streams V3beta1 Template Creation API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Defines the request and response schemas for creating a template in Splunk Streams V3beta1. Includes details on pipeline data, edges, nodes, and optional attributes. Also lists possible HTTP response codes and their meanings. ```json Request Body Schema (json): { "data": { "edges": [ { "PipelineEdge" } ], "nodes": [ { "PipelineNode" } ], "attributes": { "": "" }, "migrationInfo": { "canMigrate": true | false, "createApiVersion": , "targetApiVersion": } }, "description": "", "name": "" } Responses: Code | Description ---|--- 201 | The template was created successfully. 400 | The request isn't well-formed or is incorrect. 401 | The user isn’t authenticated. 403 | The operation isn’t authorized. 404 | The resource wasn’t found. 409 | There is a conflict with the existing state of your resource. 415 | The media type isn't supported. 422 | The provided fields aren't valid 500 | An internal service error has occurred. Response Body Schema (json): { "createDate": , "createUserId": "", "data": { "edges": [ { "PipelineEdge" } ], "nodes": [ { "PipelineNode" } ], "attributes": { "": "" }, "migrationInfo": { "canMigrate": true | false, "createApiVersion": , "targetApiVersion": } }, "description": "", "name": "", "ownerTenantId": "", "templateId": "", "version": } ``` -------------------------------- ### Register Plugin API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index API endpoint for registering a new plugin available to all tenants. Requires plugin name and description. Includes request body schema and required scopes. ```APIDOC POST /system/streams/v3beta1/plugins Register a new plugin that's available for all tenants. Required Scope: streams.plugins.create Request Body Schema (json): { "description": "", // Plugin description "name": "" // Plugin name } ``` ```curl curl -X POST "https://{host}:31000/system/streams/v3beta1/plugins" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "description": "", "name": "" }' ``` -------------------------------- ### Splunk Streams Get Pipeline API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves an individual pipeline by its ID and version. Requires 'streams.pipelines.read' scope. ```APIDOC GET /{tenant}/streams/v3beta1/pipelines/{id} Returns an individual pipeline by version. Path Variables: - tenant (string): The tenant name. - id (string): Pipeline ID Query Parameters: - version (string): version Responses: - 200: Returns the pipeline with the specified id. - 400: The request isn't well-formed or is incorrect. - 401: The user isn’t authenticated. - 403: The operation isn’t authorized. - 404: The resource wasn’t found. - 409: There is a conflict with the existing state of your resource. - 415: The media type isn't supported. - 422: The provided fields aren't valid - 500: An internal service error has occurred. Response Body Schema (json): PaginatedResponseOfPipelineJobStatus { items: [ PipelineJobStatus { jobId: "", jobStatus: "", pipelineId: "" } ], total: } ``` ```curl curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/{id}" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ``` -------------------------------- ### Get Latest Pipeline Metrics API Source: https://dev.splunk.com/enterprise/reference/dsp-onprem/api/streams/v3beta1/index Retrieves the latest metrics for a specified pipeline. Includes response codes and response body schema. ```APIDOC GET /{tenant}/streams/v3beta1/pipelines/{id}/metrics/latest Required Scope: streams.pipelines.read Path Variables: Name | Description ---|--- tenant string | The tenant name. id string | Pipeline ID Responses: Code | Description ---|--- 200 | Returns the latest metrics for a specified pipeline. 400 | The request isn't well-formed or is incorrect. 401 | The user isn’t authenticated. 403 | The operation isn’t authorized. 404 | The resource wasn’t found. 409 | There is a conflict with the existing state of your resource. 415 | The media type isn't supported. 422 | The provided fields aren't valid 500 | An internal service error has occurred. Response Body Schema (json): { "nodes": { "": { "metrics": {} } } } ``` ```curl curl -X GET "https://{host}:31000/{tenant}/streams/v3beta1/pipelines/{id}/metrics/latest" \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" ```