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-08-22T13:04:31.299Z",
    "validTo": "2025-08-22T13:04:31.299Z"
  }
}

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?