# Restate ## Docs - [Cluster health](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/cluster_health/cluster-health.md): Get the cluster health. - [Create deployment](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/deployment/create-deployment.md): Create deployment. Restate will invoke the endpoint to gather additional information required for registration, such as the services exposed by the deployment. If the deployment is already registered, this method will fail unless `force` is set to `true`. - [Delete deployment](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/deployment/delete-deployment.md): Delete deployment. Currently it's supported to remove a deployment only using the force flag - [Get deployment](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/deployment/get-deployment.md): Get deployment metadata - [List deployments](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/deployment/list-deployments.md): List all registered deployments. - [Update deployment](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/deployment/update-deployment.md): Update deployment. Invokes the endpoint and replaces the existing deployment metadata with the discovered information. This is a dangerous operation that should be used only when there are failing invocations on the deployment that cannot be resolved any other way. Sense checks are applied to test that the new deployment is sufficiently similar to the old one. - [Health check](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/health/health-check.md): Check REST API Health. - [Cancel an invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/cancel-an-invocation.md): Cancel the given invocation. Canceling an invocation allows it to free any resources it is holding and roll back any changes it has made so far, running compensation code. For more details, checkout https://docs.restate.dev/guides/sagas - [Delete an invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/delete-an-invocation.md): Use kill_invocation/cancel_invocation/purge_invocation instead. - [Kill an invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/kill-an-invocation.md): Kill the given invocation. This does not guarantee consistency for virtual object instance state, in-flight invocations to other services, etc. - [Purge an invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/purge-an-invocation.md): Purge the given invocation. This cleanups all the state for the given invocation. This command applies only to completed invocations. - [Purge an invocation journal](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/purge-an-invocation-journal.md): Purge the given invocation journal. This cleanups only the journal for the given invocation, retaining the metadata. This command applies only to completed invocations. - [Restart as new invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/restart-as-new-invocation.md): Restart the given invocation as new. This will restart the invocation as a new invocation with a different invocation id. By using the 'from' query parameter, some of the partial progress can be copied over to the new invocation. - [Resume an invocation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/invocation/resume-an-invocation.md): Resume the given invocation. In case the invocation is backing-off, this will immediately trigger the retry timer. If the invocation is suspended or paused, this will resume it. - [OpenAPI specification](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/openapi/openapi-specification.md) - [Get service](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service/get-service.md): Get a registered service. - [Get service OpenAPI](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service/get-service-openapi.md): Get the service OpenAPI 3.1 contract. - [List services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service/list-services.md): List all registered services. - [Modify a service](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service/modify-a-service.md): Modify a registered service configuration. NOTE: Service re-discovery will update the settings based on the service endpoint configuration. - [Modify a service state](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service/modify-a-service-state.md): Modify service state - [Get service handler](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service_handler/get-service-handler.md): Get the handler of a service - [List service handlers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/service_handler/list-service-handlers.md): List all the handlers of the given service. - [Create subscription](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/subscription/create-subscription.md): Create subscription. - [Delete subscription](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/subscription/delete-subscription.md): Delete subscription. - [Get subscription](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/subscription/get-subscription.md): Get subscription - [List subscriptions](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/subscription/list-subscriptions.md): List all subscriptions. - [Admin version information](https://restate-6d46e1dc-update-go-sdk.mintlify.app/admin-api/version/admin-version-information.md): Obtain admin version information. - [AI Agent Quickstart](https://restate-6d46e1dc-update-go-sdk.mintlify.app/ai-quickstart.md): Build and run your first AI agent with Restate and popular AI SDKs - [Connecting services to Restate Cloud](https://restate-6d46e1dc-update-go-sdk.mintlify.app/cloud/connecting-services.md): Learn how to connect your services to Restate Cloud. - [Getting Started with Restate Cloud](https://restate-6d46e1dc-update-go-sdk.mintlify.app/cloud/getting-started.md): Learn how to use Restate Cloud, the fully managed version of Restate. - [AI-Assisted Development](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ai-assistant.md): Developing Restate apps with AI coding agents. - [Code Generation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/code-generation.md): Use proto for type-safe servers and clients. - [Concurrent Tasks](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/concurrent-tasks.md): Execute multiple tasks concurrently and gather results. - [Durable Steps](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/durable-steps.md): Persist results of operations. - [Scheduling & Timers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/durable-timers.md): Durable timers, scheduled actions, and sleep, backed by Restate. - [Error Handling](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/error-handling.md): Stop infinite retries with Terminal Errors. - [External Events](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/external-events.md): Handle external events and human-in-the-loop patterns with durable waiting primitives. - [Logging](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/logging.md): Configure the log level of your services. - [Service Communication](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/service-communication.md): Call other services from your handler. - [Services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/services.md): Implementing Restate services with the Go SDK. - [Serving](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/serving.md): Create an endpoint to serve your services. - [State](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/go/state.md): Store key-value state in Restate. - [Concurrent Tasks](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/concurrent-tasks.md): Execute multiple tasks concurrently and gather results. - [Durable Steps](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/durable-steps.md): Persist results of operations. - [Scheduling & Timers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/durable-timers.md): Durable timers, scheduled actions, and sleep, backed by Restate. - [Error Handling](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/error-handling.md): Stop infinite retries with Terminal Errors. - [External Events](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/external-events.md): Handle external events and human-in-the-loop patterns with durable waiting primitives. - [Logging](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/logging.md): Configure the log level of your services. - [Serialization](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/serialization.md): Customize serialization for SDK actions. - [Service Communication](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/service-communication.md): Call other services from your handler. - [Services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/services.md): Implementing Restate services with the Java/Kotlin SDK. - [Serving](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/serving.md): Create an endpoint to serve your services. - [State](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/state.md): Store key-value state in Restate. - [Testing](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/java/testing.md): Utilities to test your handler logic. - [Concurrent Tasks](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/concurrent-tasks.md): Execute multiple tasks concurrently and gather results. - [Durable Steps](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/durable-steps.md): Persist results of operations. - [Scheduling & Timers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/durable-timers.md): Durable timers, scheduled actions, and sleep, backed by Restate. - [Error Handling](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/error-handling.md): Stop infinite retries with Terminal Errors. - [External Events](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/external-events.md): Handle external events and human-in-the-loop patterns with durable waiting primitives. - [Serialization](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/serialization.md): Customize serialization for SDK actions. - [Service Communication](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/service-communication.md): Call other services from your handler. - [Services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/services.md): Implementing Restate services with the Python SDK. - [Serving](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/serving.md): Create an endpoint to serve your services. - [State](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/state.md): Store key-value state in Restate. - [Testing](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/python/testing.md): Utilities to test your handler logic. - [Rust SDK](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/rust.md) - [Concurrent Tasks](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/concurrent-tasks.md): Execute multiple tasks concurrently and gather results. - [Durable Steps](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/durable-steps.md): Persist results of operations. - [Scheduling & Timers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/durable-timers.md): Durable timers, scheduled actions, and sleep, backed by Restate. - [Error Handling](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/error-handling.md): Stop infinite retries with Terminal Errors. - [External Events](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/external-events.md): Handle external events and human-in-the-loop patterns with durable waiting primitives. - [Logging](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/logging.md): Configure the log level of your services. - [Serialization](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/serialization.md): Customize serialization for SDK actions. - [Service Communication](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/service-communication.md): Call other services from your handler. - [Services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/services.md): Implementing Restate services with the TypeScript SDK. - [Serving](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/serving.md): Create an endpoint to serve your services. - [State](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/state.md): Store key-value state in Restate. - [Testing](https://restate-6d46e1dc-update-go-sdk.mintlify.app/develop/ts/testing.md): Utilities to test your handler logic. - [Documentation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/docs.md): Build, deploy, and operate resilient applications with Restate - [Examples](https://restate-6d46e1dc-update-go-sdk.mintlify.app/examples.md) - [Actions](https://restate-6d46e1dc-update-go-sdk.mintlify.app/foundations/actions.md): Essential context actions for building reliable handlers - [Handlers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/foundations/handlers.md): Learn how to create, invoke and manage handlers in Restate services - [Invocations](https://restate-6d46e1dc-update-go-sdk.mintlify.app/foundations/invocations.md): Invoke handlers in Restate services over HTTP, Kafka or with typed clients. - [Key Concepts](https://restate-6d46e1dc-update-go-sdk.mintlify.app/foundations/key-concepts.md): Core concepts of Restate applications - [Services](https://restate-6d46e1dc-update-go-sdk.mintlify.app/foundations/services.md): Understanding Restate's three service types and when to use each - [Local Restate Cluster with Docker](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/cluster.md): Learn how to deploy a Restate cluster using Docker Compose. - [Cron Jobs](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/cron.md): Schedule tasks periodically with Restate - [Databases and Restate](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/databases.md): Learn when and how to use databases in combination with Restate. - [Durable Webhooks](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/durable-webhooks.md): Process webhook events from external services with exactly-once delivery guarantees. - [Error Handling](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/error-handling.md): Learn how to handle transient and terminal errors in your applications. - [Guides](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/index.md): Learn how to do common tasks with Restate. - [Restate-Kafka Quickstart](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/kafka-quickstart.md): Learn how to connect your Restate service to a Kafka topic. - [Scaling to Multi-Node Deployments](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/local-to-replicated.md): Migrate a single node to a multi-node cluster. - [Parallelizing Work](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/parallelizing-work.md): Execute a list of tasks in parallel and then gather their result. - [Rate Limiting](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/rate-limiting.md): Control request rates and prevent service overload with Restate - [Request Lifecycle](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/request-lifecycle.md): Deep dive into the lifecycle of a request in Restate - [Sagas](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/sagas.md): Implementing undo operations in case of failures, to keep your system consistent - [XState](https://restate-6d46e1dc-update-go-sdk.mintlify.app/guides/xstate.md): Integrate Restate with XState to implement durable state machines. - [Welcome to Restate!](https://restate-6d46e1dc-update-go-sdk.mintlify.app/index.md): Build innately resilient backends and AI agents - [Installation](https://restate-6d46e1dc-update-go-sdk.mintlify.app/installation.md): Learn how to set up your local Restate development environment. - [Quickstart](https://restate-6d46e1dc-update-go-sdk.mintlify.app/quickstart.md): Develop and run your first Restate service - [Restate Architecture](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/architecture.md): Restate architecture and distributed deployment concepts - [CLI Configuration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/cli-config.md): Restate CLI configuration options. - [Error Codes](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/errors.md): Descriptions of error codes emitted by Restate components - [Go API](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/gopkg.md) - [Javadocs](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/javadocs.md) - [KotlinDocs](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/ktdocs.md) - [Restate Server Configuration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/server-config.md): Reference of the configuration options for Restate Server. - [SQL Introspection API](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/sql-introspection.md): API reference for inspecting the invocation status and service state. - [Typescript API](https://restate-6d46e1dc-update-go-sdk.mintlify.app/references/tsdocs.md) - [Clusters](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/clusters.md): Operating Restate clusters - [Restate Server Configuration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/configuration.md): Configure the Restate Server. - [CDK for AWS](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/deploy/cdk.md) - [Cluster](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/deploy/cluster.md): Deploy a distributed Restate cluster. - [null](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/deploy/kubernetes.md): Deploy the Restate Server on Kubernetes. - [Logging](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/monitoring/logging.md): Configure logging for Restate Server. - [Metrics](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/monitoring/metrics.md): Expose Restate Server Prometheus metrics. - [Tracing](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/monitoring/tracing.md): Export OTEL traces of your invocations. - [Snapshots & Backups](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/snapshots.md): Understanding and configuring snapshots and data backups in Restate clusters - [Upgrading Restate](https://restate-6d46e1dc-update-go-sdk.mintlify.app/server/upgrading.md): Version upgrades of Restate Server, compatibility policy, and rollback strategy - [Service Configuration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/configuration.md): Configure service-level behavior like retries, timeouts, retention, and privacy. - [Cloudflare Workers](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/deploy/cloudflare-workers.md): Run your TypeScript services on Cloudflare Workers - [Deno Deploy](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/deploy/deno-deploy.md): Run your TypeScript services on Deno Deploy - [Standalone/Kubernetes](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/deploy/kubernetes.md): Learn how to run Restate applications on Kubernetes. - [AWS Lambda](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/deploy/lambda.md): Run Restate services on AWS Lambda. - [Vercel](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/deploy/vercel.md): Run your TypeScript services on Vercel - [Introspection](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/introspection.md): Inspect the status of invocations/services. - [Go SDK Clients](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/clients/go-sdk.md): Invoke services from any Go code. - [Java/Kotlin SDK Clients](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/clients/java-sdk.md): Invoke services from any Java/Kotlin code. - [TypeScript SDK Clients](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/clients/typescript-sdk.md): Invoke services from any TypeScript code. - [HTTP](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/http.md): Learn how to invoke Restate services over HTTP. - [null](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/kafka.md): Invoke handlers via Kafka events. - [Managing Invocations](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/invocation/managing-invocations.md): Understand the lifecycle of a Restate invocation and how to manage it. - [Security](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/security.md): Restrict access to Restate services - [Versioning](https://restate-6d46e1dc-update-go-sdk.mintlify.app/services/versioning.md): Understand deployments, registration, and versioning in Restate. - [Microservice Orchestration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/tour/microservice-orchestration.md): Learn how to orchestrate microservices with durable execution, sagas, and async communication patterns. - [Tour of Restate for Agents with OpenAI SDK](https://restate-6d46e1dc-update-go-sdk.mintlify.app/tour/openai-agents.md): Build stateful, observable AI agents that recover from failures. - [Tour of Restate for Agents with Vercel AI SDK](https://restate-6d46e1dc-update-go-sdk.mintlify.app/tour/vercel-ai-agents.md): Build stateful, observable AI agents that recover from failures. - [Workflows](https://restate-6d46e1dc-update-go-sdk.mintlify.app/tour/workflows.md): Build resilient workflows with familiar programming patterns. - [AI Agents](https://restate-6d46e1dc-update-go-sdk.mintlify.app/use-cases/ai-agents.md): Build resilient, observable AI agents that recover from failures and handle complex multi-step tasks. - [Event Processing](https://restate-6d46e1dc-update-go-sdk.mintlify.app/use-cases/event-processing.md): Build lightweight, transactional event handlers with built-in resiliency. - [Microservice Orchestration](https://restate-6d46e1dc-update-go-sdk.mintlify.app/use-cases/microservice-orchestration.md): Build resilient, distributed microservices with durable execution, sagas, and reliable service communication. - [Workflows](https://restate-6d46e1dc-update-go-sdk.mintlify.app/use-cases/workflows.md): Build resilient, low-latency workflows with code.