Use case

Deploy, pause, resume and undeploy use cases

Overview

The Use case API allows developers to deploy, test, validate and undeploy use case. Use case definitions provide the required binding of the stream and data transports.

For further information on the structure of the content payload refer to this documentation.

Example use case content

{
  "use case": {
    "name": "basic_twindow_analytics",
    "sources": [
      "nasdaq_quotes_stream"
    ],
    "stream name": "basic_tumbling_window_pipeline",
    "sinks": [
      "kafka_analytics_view"
    ]
  }
} 

Deploy use case

post

Deploy and start a use case processing using pre-registered components

Body
namestringOptional
enabledbooleanRequired
sourcesstring[]Optional
referenceDataSourcesstring[]Optional
streamNamestringOptional
sinksstring[]Optional
Responses
201
Successful deployed and started use case
post
POST /joule/management/usecase/deploy HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 766

{
  "name": "text",
  "enabled": true,
  "sources": [
    "text"
  ],
  "referenceDataSources": [
    "text"
  ],
  "streamName": "text",
  "sinks": [
    "text"
  ],
  "streamSpecification": {
    "name": "text",
    "enabled": true,
    "sources": [
      "text"
    ],
    "bufferSize": 1,
    "checkPointProcessing": true,
    "groupbyKey": {
      "keys": [
        "text"
      ],
      "partitionKey": 1
    },
    "groupByAttributes": [
      "text"
    ],
    "streamTimeType": "INGEST_TIME",
    "propertiesPath": "text",
    "consumerQueueSize": 1,
    "consumingFrequency": 1,
    "publishingQueueSize": 1,
    "publishingFrequency": 1,
    "telemetryAuditingSpecification": {
      "name": "text",
      "enabled": true,
      "rawTelemetrySpecification": {
        "cloneEvents": true,
        "auditFrequency": 1
      },
      "processedTelemetrySpecification": {
        "cloneEvents": true,
        "auditFrequency": 1
      }
    }
  },
  "processingConstraints": {
    "validFrom": "2025-06-26T19:40:20.319Z",
    "validTo": "2025-06-26T19:40:20.319Z"
  }
}

No content

Get deployed use cases specification

get
Query parameters
namestringRequired

Use case logical name.

Responses
201
Successful detail provided for use cases
get
GET /joule/management/usecase/detail?name=text HTTP/1.1
Host: 
Accept: */*

No content

List registered use cases

get
Responses
201
Successful list use cases
get
GET /joule/management/usecase/list HTTP/1.1
Host: 
Accept: */*

No content

Undeploy use case

delete

Stop and undeploy a use case from the Joule process

Query parameters
namestringRequired

Name of use case to unregistered

Example: quoteStream
Responses
201
Successfully unregistered use case
delete
DELETE /joule/management/usecase/undeploy?name=quoteStream HTTP/1.1
Host: 
Accept: */*

No content


Pause use case processing

put
Path parameters
namestringRequired

Name of use case to pause

Example: quoteStream
Responses
201
Successful paused stream
put
PUT /joule/management/usecase/pause HTTP/1.1
Host: 
Accept: */*

No content

Resume use case processing

post
Path parameters
namestringRequired

Nane of stream to resume processing

Example: quoteStream
Responses
201
Successful restarted stream processing
post
POST /joule/management/usecase/resume HTTP/1.1
Host: 
Accept: */*

No content

Last updated

Was this helpful?