This document provides the API reference for Flame's gRPC services.
Flame exposes three gRPC services:
| Service | Description | Proto File |
|---|---|---|
| Frontend | Client-facing API for sessions, tasks, and applications | frontend.proto |
| Backend | Executor-facing API for node and executor management | backend.proto |
| Instance | Application instance lifecycle management | shim.proto |
- Type Definitions - Common message types used across all services
- Frontend Service - For client SDK developers
- Backend Service - For executor/node developers
- Instance Service - For application shim developers
- SDK Guides - For application developers using Rust or Python
All services and messages are defined in the flame.v1 package.
package flame.v1;Flame supports TLS for secure communication. Configure TLS certificates in your client configuration:
current-context: flame
contexts:
- name: flame
cluster:
endpoint: "https://flame-session-manager:8080"
tls:
ca_file: "/etc/flame/certs/ca.crt"
cert_file: "/etc/flame/certs/client.crt"
key_file: "/etc/flame/certs/client.key"
cache:
endpoint: "grpcs://flame-object-cache:9090"
tls:
ca_file: "/etc/flame/certs/ca.crt"
cert_file: "/etc/flame/certs/client.crt"
key_file: "/etc/flame/certs/client.key"gRPC status codes are used for error reporting:
| Code | Description |
|---|---|
OK |
Operation succeeded |
NOT_FOUND |
Resource not found |
ALREADY_EXISTS |
Resource already exists |
INVALID_ARGUMENT |
Invalid request parameters |
FAILED_PRECONDITION |
Operation not allowed in current state |
INTERNAL |
Internal server error |