v7

latestOpenAPI 3.1.0MITraw.githubusercontent.com2026-07-07355390.1 KB
service_handler

Get service handler

Returns detailed metadata about a specific handler within a service, including its input/output types and handler type.

get/services/{service}/handlers/{handler}

Path parameters

servicestring required

Fully qualified service name.

handlerstring required

Handler name.

Response

Handler metadata including input/output types and configuration

abort_timeoutstring nullable

Abort timeout

This timer guards against stalled service/handler invocations that are supposed to terminate. The abort timeout is started after the 'inactivity timeout' has expired and the service/handler invocation has been asked to gracefully terminate. Once the timer expires, it will abort the service/handler invocation.

This timer potentially interrupts user code. If the user code needs longer to gracefully terminate, then this value needs to be set accordingly.

Can be configured using the jiff::fmt::friendly format or ISO8601, for example 5 hours.

If set, it overrides the value set in the service.

documentationstring nullable

Documentation

Documentation of the handler, as propagated by the SDKs.

enable_lazy_stateboolean nullable

Enable lazy state

If true, lazy state will be enabled for all invocations to this service. This is relevant only for Workflows and Virtual Objects.

If set, it overrides the value set in the service.

idempotency_retentionstring nullable

Idempotency retention

The retention duration of idempotent requests for this handler. If set, it overrides the value set in the service.

Can be configured using the jiff::fmt::friendly format or ISO8601, for example 5 hours.

inactivity_timeoutstring nullable

Inactivity timeout

This timer guards against stalled service/handler invocations. Once it expires, Restate triggers a graceful termination by asking the service invocation to suspend (which preserves intermediate progress).

The 'abort timeout' is used to abort the invocation, in case it doesn't react to the request to suspend.

Can be configured using the jiff::fmt::friendly format or ISO8601, for example 5 hours.

If set, it overrides the value set in the service.

input_descriptionstring required

Human readable input description

If empty, no schema was provided by the user at discovery time.

{"stackTrail":"components:schemas:HandlerMetadata:properties:input_json_schema","oasType":"schema","type":"unknown","description":"# Input JSON Schema\n\nJSON Schema of the handler input"}
journal_retentionstring nullable

Journal retention

The journal retention. When set, this applies to all requests to this handler.

In case the invocation has an idempotency key, the idempotency_retention caps the maximum journal_retention time. In case this handler is a workflow handler, the workflow_completion_retention caps the maximum journal_retention time.

Can be configured using the jiff::fmt::friendly format or ISO8601, for example 5 hours.

If set, it overrides the value set in the service.

metadataobject

Metadata

Additional handler metadata, as propagated by the SDKs.

namestring required

Name

The handler name.

output_descriptionstring required

Human readable output description

If empty, no schema was provided by the user at discovery time.

{"stackTrail":"components:schemas:HandlerMetadata:properties:output_json_schema","oasType":"schema","type":"unknown","description":"# Output JSON Schema\n\nJSON Schema of the handler output"}
publicboolean

Public

If true, this handler can be invoked through the ingress. If false, this handler can be invoked only from another Restate service.

ty'Exclusive' | 'Shared' | 'Workflow'