HTTP - script API

StackState Self-hosted v5.1.x

Sometimes it may be useful to process the retrieved topology or telemetry data using an external tool. For example, to perform analysis using a custom Python script, a cloud service or a Machine Learning framework. StackState can call out to any external service via HTTP using the functions in this script API.

circle-info

To execute scripts using the HTTP script API in the StackState UI analytics environment, a user must have the permission execute-restricted-scripts. For details, see the analytics page permissions.

Function: HTTP.get(uri: String)

Submit HTTP get request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .header(name: String, value: String) - specify the header.

  • .noProxy() - even when a proxy is configured don't use it for this request.

Return type

  • Async: HttpScriptApiTextResponse or HttpScriptApiJsonResponse if .jsonResponse() is used.

Examples

Function: HTTP.put(uri: String)

Submit HTTP put request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .header(name: String, value: String) - specify the header.

  • .noProxy() - even when a proxy is configured don't use it for this request.

  • .contentType(contentType: String) - specify the content type, for example "application/text".

  • .textRequest(text: String) - specify the text of the request.

  • .jsonRequest(json: Goovy.lang.Closures) - specify the JSON of the request. This will wrap the given closure with a JsonBuilderarrow-up-right.

  • .jsonBody() - get the body of the JSON response.

  • .jsonResponse() - get the JSON response.

Return type

  • AsyncScriptResult[HttpScriptApiTextResponse] or AsyncScriptResult[HttpScriptApiJsonResponse] if .jsonResponse() is used.

Examples

Function: HTTP.post(uri: String)

Submit HTTP post request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .header(name: String, value: String) - specify the header.

  • .noProxy() - even when a proxy is configured don't use it for this request.

  • .contentType(contentType: String) - specify the content type, for example "application/text".

  • .textRequest(text: String) - specify the text of the request.

  • .jsonRequest(json: Goovy.lang.Closures) - specify the JSON of the request. This will wrap the given closure with a JsonBuilderarrow-up-right.

  • .jsonBody() - get the body of the JSON response.

  • .jsonResponse() - get the JSON response.

Return type

  • AsyncScriptResult[HttpScriptApiTextResponse] or AsyncScriptResult[HttpScriptApiJsonResponse] if .jsonResponse() is used.

Examples

Function: HTTP.delete(uri: String)

Submit HTTP delete request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .header(name: String, value: String) - specify the header.

  • .noProxy() - even when a proxy is configured don't use it for this request.

Return type

  • AsyncScriptResult[HttpScriptApiTextResponse] or AsyncScriptResult[HttpScriptApiJsonResponse] if .jsonResponse() is used.

Examples

Function: HTTP.options(uri: String)

Submit HTTP options request.

Args

  • uri - uri of the HTTP server.

Examples

Function: HTTP.patch(uri: String)

Submit HTTP patch request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .header(name: String, value: String) - specify the header.

  • .noProxy() - even when a proxy is configured don't use it for this request.

  • .contentType(contentType: String) - specify the content type, for example "application/text".

  • .textRequest(text: String) - specify the text of the request.

  • .jsonRequest(json: Goovy.lang.Closures) - specify the JSON of the request. This will wrap the given closure with a JsonBuilderarrow-up-right.

  • .jsonBody() - get the body of the JSON response.

  • .jsonResponse() - get the JSON response.

Return type

  • AsyncScriptResult[HttpScriptApiTextResponse] or AsyncScriptResult[HttpScriptApiJsonResponse] if .jsonResponse() is used.

Examples

Function: HTTP.head(uri: String)

Submit HTTP head request.

Args

  • uri - uri of the HTTP server.

Builder methods

  • .timeout(time: Duration) - make the request timeout after time has elapsed.

  • .param(name: String, value: String) - specify the query.

  • .noProxy() - even when a proxy is configured don't use it for this request.

  • .header(name: String, value: String) - specify the header.

Return type

  • AsyncScriptResult[HttpScriptApiTextResponse] or AsyncScriptResult[HttpScriptApiJsonResponse] if .jsonResponse() is used.

Examples

Last updated