Overview
Azure Logic Apps Standard uses Azure Table Storage as its primary persistence layer for workflow state, execution history, and runtime metadata. This document provides a comprehensive reference to the table architecture, naming conventions, and schema patterns.
Table Categories
Logic Apps Standard organizes data into two distinct table categories:
Category
Scope
Purpose
Base Tables
Logic App Resource
Shared runtime metadata across all workflows
Flow Tables
Individual Workflow
Isolated execution data per workflow
This separation enables workflow isolation , horizontal scaling , and independent lifecycle management .
Base Tables (App-Level)
Base Tables store metadata that applies to the entire Logic App resource. All workflows within a Logic App share these tables.
Table Naming Pattern
flow{LAIdentifier}{suffix}
Enter fullscreen mode
Exit fullscreen mode
Where:
LAIdentifier = First 15 characters of MurmurHash64(LogicAppName)
suffix = Table type identifier
Base Table Types
Table Suffix
Purpose
Key Data
flows
Master workflow registry
Workflow definitions, state, CU assignment
flowruntimecontext
Runtime execution context
Flow state, execution cluster type, runtime config
flowaccesskeys
Workflow access keys
Primary/secondary keys for workflow API access
flowsubscriptions
Subscription registration
Tenant registration, subscription state
flowsubscriptionsummary
Workflow counts & summaries
Flow counts by state (enabled/disabled)
jobdefinitions
Job scheduler metadata
Execution state, retry config, repeat schedules
Example
For a Logic App named OrderProcessing:
LAIdentifier = flow7365adc025615f3
Base Tables:
├── flow7365adc025615f3flows
├── flow7365adc025615f3flowruntimecontext
├── flow7365adc025615f3flowaccesskeys
├── flow7365adc025615f3flowsubscriptions
└── flow7365adc025615f3jobdefinitions
Enter fullscreen mode
Exit fullscreen mode
Flow Tables (Workflow-Level)
Flow Tables store execution data specific to each workflow. Each workflow gets its own isolated set of tables.
Table Naming Pattern
flow{LAIdentifier}{WFIdentifier}{suffix}
Enter fullscreen mode
Exit fullscreen mode
Where:
LAIdentifier = First 15 characters of MurmurHash64(LogicAppName)
WFIdentifier = First 15 characters of MurmurHash64(WorkflowId)
suffix = Table type identifier
Flow Table Types
Table Suffix
Purpose
Key Data
flows
Workflow definition cache
Latest definition, parameters, runtime context, CU
runs
Run metadata
Run status, timing, trigger info, correlation IDs
histories
Trigger history
Trigger fires, evaluation results, input/output links
actions
Action executions
Action status, timing, input/output blob links
variables
Workflow variables
Variable name, data type, value links
concurrentruns
Concurrency tracking
Active run coordination (when concurrency is enabled)
Date-Stamped Tables
Action-related tables use date partitioning for scalability:
{WFIdentifier}yyyyMMddT000000Z{suffix}
Enter fullscreen mode
Exit fullscreen mode
Example: 1c859134ef297b720250114T000000Zactions
Example
For workflow ProcessOrder in OrderProcessing Logic App:
LAIdentifier = flow7365adc025615f3
WFIdentifier = 1c859134ef297b7
Flow Tables:
├── flow7365adc025615f31c859134ef297b7flows
├── flow7365adc025615f31c859134ef297b7runs
├── flow7365adc025615f31c859134ef297b7histories
├── flow7365adc025615f31c859134ef297b720250114T000000Zactions
└── flow7365adc025615f31c859134ef297b720250114T000000Zvariables
Enter fullscreen mode
Exit fullscreen mode
Table Key Fields
Base Flows Table (Master Registry)
Field
Description
FlowId
Unique workflow identifier (GUID)
FlowName
Workflow name
Kind
Workflow type (Stateful / Stateless)
State
Enabled or Disabled
ScaleUnit
CU assignment (CU00, CU01, etc.)
DefinitionCompressed
Compressed workflow JSON definition
ParametersCompressed
Compressed workflow parameters
RuntimeConfiguration
Retention settings, operation options
CreatedTime / ChangedTime
Lifecycle timestamps
FlowRuntimeContext Table
Field
Description
FlowId
Workflow identifier
FlowState
Current workflow state
FlowExecutionClusterType
Execution cluster (Classic)
Kind
Workflow type
RuntimeConfiguration
Runtime settings JSON
FlowSequenceId
Sequence identifier
FlowAccessKeys Table
Field
Description
FlowId
Workflow identifier
FlowAccessKeyName
Key name (e.g., default)
PrimaryKey
Primary access key
SecondaryKey
Secondary access key
FlowSubscriptions Table
Field
Description
SubscriptionId
Azure subscription identifier
State
Registration state (Registered)
Properties
Tenant ID and registered features JSON
RegistrationDate
Subscription registration timestamp
FlowSubscriptionSummary Table
Field
Description
FlowCountsByState
JSON with enabled/disabled workflow counts
FlowId / FlowName
Workflow reference (for per-workflow entries)
State
Workflow state
ScaleUnit
CU assignment
DefinitionCompressed
Compressed definition (cached)
JobDefinitions Table
Field
Description
JobId
Unique job identifier
JobPartition
Job partition key
Callback
Job callback type (e.g., LinearSequencerJob)
State
Job state (Completed, Waiting, etc.)
ExecutionState
Current execution state
StartTime / EndTime
Job scheduling window
NextExecutionTime
Scheduled next execution
RepeatMode / RepeatUnit / RepeatInterval
Recurrence configuration
RetryMode / RetryCount / RetryInterval
Retry configuration
CurrentExecutionCount
Total executions
LastExecutionStatus / LastExecutionTime
Most recent execution info
BinaryMetadata00-15
Compressed job metadata chunks
Runs Table
Field
Description
FlowId / FlowName
Workflow reference
Status
Succeeded, Failed, Running, Cancelled
CreatedTime / EndTime
Run timing
TriggerName
Trigger that initiated the run
CorrelationId
Request correlation tracking
ClientTrackingId
Client-provided tracking ID
TriggerCompressed
Compressed trigger payload
OutputsCompressed
Compressed run outputs
Histories Table (Trigger History)
Field
Description
HistoryName
History entry identifier
TriggerName
Trigger reference
Fired
Boolean - whether trigger actually fired
Status
Trigger evaluation result
InputsLinkCompressed
Link to trigger inputs
OutputsLinkCompressed
Link to trigger outputs
TrackingId
Correlation tracking
Actions Table
Field
Description
ActionName
Action identifier
ActionRepetitionName
Loop iteration index (e.g., 000000)
Status
Succeeded, Skipped, Failed
Code
Result code (OK, ActionSkipped, etc.)
CreatedTime / CompletedTime
Action timing
InputsLinkCompressed
Link to action inputs blob
OutputsLinkCompressed
Link to action outputs blob
RepeatItemIndex
Loop iteration number
RepeatItemScopeName
Parent loop action name
Error
Error details (if failed)
Variables Table
Field
Description
VariableName
Variable identifier
DataType
Variable type (Integer, String, Boolean, etc.)
FlowId / FlowName
Workflow reference
FlowRunSequenceId
Run sequence identifier
OperationId
Operation that modified the variable
OperationSequenceId
Operation sequence
InputsLinkCompressed
Link to variable input
ValueLinkCompressed
Link to current variable value
CreatedTime / ChangedTime
Variable lifecycle timestamps
Workflow Flows Table (Per-Workflow Cache)
Field
Description
FlowId / FlowName
Workflow identifier
Kind
Workflow type (Stateful)
State
Enabled or Disabled
ScaleUnit
CU assignment
DefinitionCompressed
Compressed latest workflow definition
ParametersCompressed
Compressed parameters
RuntimeConfiguration
Runtime settings JSON
RuntimeContext
Compressed runtime context
FlowSequenceId
Definition sequence ID
FlowUpdatedTime
Last definition update time
Identifier Generation
Logic Apps uses MurmurHash64 for deterministic, collision-resistant identifier generation.
Algorithm
// Generate Logic App identifier (LAIdentifier)
string laIdentifier = "flow" + MurmurHash64 ( logicAppName ). Substring ( 0 , 15 );
// Generate Workflow identifier (WFIdentifier)
string wfIdentifier = MurmurHash64 ( workflowId ). Substring ( 0 , 15 );
// Complete table name
string tableName = laIdentifier + wfIdentifier + suffix ;
Enter fullscreen mode
Exit fullscreen mode
Constraints
Table names: Max 63 characters (Azure Table Storage limit)
Characters: Lowercase alphanumeric only
Hash truncation: 15 characters provides sufficient uniqueness
Quick Reference
Table Name Format
Base: flow{LAIdentifier}{suffix}
Flow: flow{LAIdentifier}{WFIdentifier}{suffix}
Dated: flow{LAIdentifier}{WFIdentifier}{yyyyMMddT000000Z}{suffix}
Enter fullscreen mode
Exit fullscreen mode
Common Suffixes
Suffix
Level
Purpose
flows
Both
Definitions
runs
Flow
Run history
actions
Flow
Action executions
flowsubscriptions
Base
Trigger subscriptions
jobdefinitions
Base
Scheduled jobs
Top comments (0)