RegexSolverRegexSolver
  • Live Demo
  • Docs
  • Pricing
  • Open Source ↗
  • Console ↗
Console ↗
  • Docs
  • API Reference
HELP
  • Documentation
  • Report an issue ↗
RESOURCES
  • Developer console
  • GitHub ↗
LEGAL
  • Privacy policy
  • Terms & conditions
RegexSolverRegexSolver

© 2026 REGEXSOLVER · ALL RIGHTS RESERVED

Analyze
    CardinalitypostGraphviz DOTpostEmptypostEmpty String OnlypostTotalitypostDeterministicpostEquivalentpostLengthpostPatternpostSubsetpost
Compute
    ConcatenationpostDifferencepostIntersectionpostRepeatpostUnionpostComplementpostDeterminizepost
Generate
    Stringspost
Account
    Limitsget
Schemas
RegexSolver API
RegexSolver API

Schemas


AccountLimits

The plan limits currently applying to the account.
type
​string · enum · required
Enum values:
accountLimits
maxRequestsCount
​integer · int64 · required

Maximum number of requests allowed per billing period.

maxRequestsRate
​integer · int64 · required

Maximum number of requests allowed per second. 0 means no rate limit is enforced.

maxTermsCount
​integer · int64 · required

Maximum number of terms accepted in a single request.

maxTimeout
​integer · int64 · required

Maximum execution timeout per request, in milliseconds.

maxStatesCount
​integer · int64 · required

Maximum number of automaton states an operation may build.

Boolean

Wrapper for a boolean value.
type
​string · enum · required
Enum values:
boolean
value
​boolean · required

Boolean value.

Cardinality

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object · type="infinite"
type = object · type="bigInteger"
type = object · type="integer" · requires: value
Properties for Variant 1:
The set of matched strings is infinite.
CardinalityInfinite
type
​string · enum · required
Enum values:
infinite

CardinalityInfinite

The set of matched strings is infinite.
type
​string · enum · required
Enum values:
infinite

CardinalityBigInteger

The set of matched strings is finite but too large to be returned.
type
​string · enum · required
Enum values:
bigInteger

CardinalityInteger

The set of matched strings is finite.
type
​string · enum · required
Enum values:
integer
value
​integer · int64 · min: 0 · required

Exact count.

ErrorResponse

success
​boolean · required
error
​string · required

Human readable error message.

errorCode
​string

The error code.

ErrorResponse400

success
​boolean · required
error
​string · required

Human readable error message.

errorCode
​string · enum

The error code.

Enum values:
InvalidJson
TooManyTerms
TooFewTerms
TimeoutTooLarge
TimeoutExceeded
InvalidNumberOfStringsToGenerate
AutomatonTooManyStates
RegexSyntaxError

ErrorResponse401

success
​boolean · required
error
​string · required

Human readable error message.

errorCode
​string · enum

The error code.

Enum values:
MissingOrMalformedToken
InvalidToken

ErrorResponse403

success
​boolean · required
error
​string · required

Human readable error message.

errorCode
​string · enum

The error code.

Enum values:
QuotaExceeded

GenerateStringsRequest

Request to generate up to `limit` distinct strings matched by `term`, skipping the first `offset` strings and confined to lengths between `minLength` and `maxLength`. For consistent pagination, `term` should be deterministic.
​required

Source term to generate strings from.

limit
​integer · min: 1 · max: 100 · required

Maximum number of unique strings to return.

offset
​integer · min: 0

Number of matched strings to skip before starting to collect the results. Used for pagination.

Default: 0
minLength
​integer · min: 0

Shortest string to generate. Strings shorter than this are left out of the enumeration entirely, offset never counting them.

Default: 0
maxLength
​integer · min: 1 · max: 100

Longest string to generate. Strings longer than this are left out of the enumeration entirely, offset never counting them. A value below minLength leaves nothing to generate.

Default: 100
pathOrder
​string · enum

Order in which the paths of the language are scheduled. Defaults to sweep.

Enum values:
sweep
interleave
shuffled
Default: sweep
characterOrder
​string · enum

Order in which the strings within each path are produced. Defaults to ascending.

Enum values:
ascending
shuffled
Default: ascending
seed
​integer · int64 · min: 0

Seed behind the shuffled modes of pathOrder and characterOrder; ignored when neither is used. The default seed is fixed rather than random, so two calls sharing a seed generate the same strings and offset pages through them consistently. Change it to draw a different sequence from the same term.

Default: 0
charset
​string | null

Character class the generated strings are restricted to, such as [a-z] or \P{C}. Paths needing a character outside of it are dropped entirely. If omitted, every character the term allows is used.

Example: [a-z]
​RequestOptions

Change how the engine handles the operation.

GenerateStringsPathOrder

string · enum
Enum values:
sweep
interleave
shuffled

Order in which the paths of the language are scheduled — the shapes the term allows, as opposed to the characters filling them (characterOrder). sweep expands one path in full, shortest first, before moving to the next one: the cheapest way to page through a whole language with offset. interleave covers every path the term holds before any path is asked for a second string, so a limit smaller than the number of shapes is spent entirely on distinct shapes; slower than sweep, but better suited to deriving test cases. shuffled is interleave with same-length paths visited in an order drawn by seed. Shorter paths still come first, so the seed only draws among paths of equal length. All three are deterministic and page with offset; for shuffled, offsets are only consistent between calls sharing the same seed.

Default: sweep

GenerateStringsCharacterOrder

string · enum
Enum values:
ascending
shuffled

Order in which the strings within each path are produced. Orthogonal to pathOrder: it does not change what can be generated, only which strings are reached first. ascending expands each position from the low end of its character range first, so [a-z]{8} yields aaaaaaaa, aaaaaaab, ... — a stable, spec-defined order returning the smallest witnesses of a path first. shuffled applies a permutation drawn from seed, so [a-z]{8} yields something like sjtwsive instead: the strings look like real inputs. Random in look only — generation stays reproducible and pages with offset, though offsets are only consistent between calls sharing the same seed, and the exact sequence may change between releases. Use charset to restrict generation to specific characters.

Default: ascending

GenerateStringsResponse

Response containing distinct strings generated from the requested `term`.
type
​string · enum · required
Enum values:
generatedStrings
​object · required

The generated distinct strings.

Length

Minimum and maximum length of any string in the language.
type
​string · enum · required
Enum values:
length
min
​integer | null · required

Shortest possible length, or null if empty.

max
​integer | null · required

Longest possible length, or null if unbounded.

TermRequest

Request carrying a single term.
​Term · required

Serialized term.

​RequestOptions

Change how the engine handles the operation.

MultiTermsRequest

Request carrying 2 or more terms for n-ary operations.
​Term[] · minItems: 2 · required

Terms to process. Order matters for some operations.

​RequestOptions

Change how the engine handles the operation.

RepeatRequest

Request to repeat a term between `min` and `max` times.
​required

Term to repeat.

min
​integer · min: 0 · required

Inclusive lower bound of repetitions.

max
​integer | null · min: 0

Inclusive upper bound. If omitted or null, the repetition is unbounded.

​RequestOptions

Change how the engine handles the operation.

RequestOptions

Change how the engine handles the operation.
schemaVersion
​integer · required

Client-expected schema version.

Example: 1
​ResponseOptions

Change how the engine returns results.

​ExecutionOptions

Change how the engine executes the operation.

FairResponseOptions

Options controlling the FAIR output. Only applied when response format is "fair".
deterministic
​boolean

When true, the returned FAIR is guaranteed to be a deterministic automaton, suitable for consistent pagination with /generate/strings.

ResponseOptions

Change how the engine returns results.
format
​string · enum

Return format of the term.

Enum values:
any
fair
regex
​object

Options applied when format is "fair". Ignored otherwise.

ExecutionOptions

Change how the engine executes the operation.
timeout
​integer · min: 1

Timeout in milliseconds for the operation.

String

Wrapper for a string value.
type
​string · enum · required
Enum values:
string
value
​string · required

String value.

Strings

Wrapper for a list of strings.
type
​string · enum · required
Enum values:
strings
value
​string[] · required

Array of unique strings.

Term

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object · type="regex" · requires: value
type = object · type="fair" · requires: value
Properties for Variant 1:
Term encoded as a regular expression pattern.
TermRegex
type
​string · enum · required
Enum values:
regex
value
​string · required

Regular expression pattern.

TermRegex

Term encoded as a regular expression pattern.
type
​string · enum · required
Enum values:
regex
value
​string · required

Regular expression pattern.

TermFairMetadata

Metadata describing properties of a FAIR automaton.
deterministic
​boolean

Whether this FAIR encodes a deterministic automaton. Only a deterministic FAIR guarantees consistent string ordering across paginated /generate/strings requests; call /compute/determinize first if this is false.

TermFair

Term encoded as FAIR (Fast Automaton Internal Representation), a stable, signed format used internally by the engine.
type
​string · enum · required
Enum values:
fair
value
​string · required

FAIR payload.

​object · readOnly

Metadata describing properties of a FAIR automaton.

TwoTermsRequest

Request carrying exactly 2 terms.
​Term[] · minItems: 2 · maxItems: 2 · required

Exactly 2 terms.

​RequestOptions

Change how the engine handles the operation.

On this page
  • AccountLimits
  • Boolean
  • Cardinality
  • CardinalityInfinite
  • CardinalityBigInteger
  • CardinalityInteger
  • ErrorResponse
  • ErrorResponse400
  • ErrorResponse401
  • ErrorResponse403
  • GenerateStringsRequest
  • GenerateStringsPathOrder
  • GenerateStringsCharacterOrder
  • GenerateStringsResponse
  • Length
  • TermRequest
  • MultiTermsRequest
  • RepeatRequest
  • RequestOptions
  • FairResponseOptions
  • ResponseOptions
  • ExecutionOptions
  • String
  • Strings
  • Term
  • TermRegex
  • TermFairMetadata
  • TermFair
  • TwoTermsRequest