Quick Reference
Each event type in Summit Event language and what it does
Requests & Response
Events to fetch, parse, and return data.
Type | Behavior | Input | Output | Example(s) |
---|---|---|---|---|
Requests | Make a GET or POST request for JSON, HTML, or CSV data. | Object to define headers , params , json , cookies , or data . | Web request response contents, HTML, CSV, JSON. | =Request('get', 'https://api.example.com/x.json') |
Parser | Use a JSONPath expression to parse the output of a Request. | JSON, typically returned from a Request . | A list of matches. | =Parser('$..coordinates.lat') |
Response | Compose the data field of your model's API response. | Numbers, strings, text, or JSON. | None | =Response("foo.bar") ,=Response("myDataList[]") |
Table | Create an in-memory table for querying. | Remote CSV data or a list of dictionaries. | A table reference for use by Query events. | =Table("https://sheets.google.com/my.csv") or =Table("contacts") |
Query | Perform a SQL query on a Table | A Table reference. | A list of dictionaries representing the result set. | =Query("SELECT * FROM $table WHERE name = 'John Doe'") or =Query("SELECT * FROM contacts WHERE age = 44") |
Objects & Arrays
Events to store and send fixed lists or object definitions.
Type | Behavior | Input | Output | Example(s) |
---|---|---|---|---|
Array | Defines a static list to relay to another event. | None, statically defined. | The entire array as a list. | =Array(['peanut butter', 'jelly', 5]) |
Object | Defines a literal object using JSON syntax. | None, statically defined. You may use liquid syntax within string components of the definition. | The object as a dictionary. | =Object({"warm": true}) |
Strings & Text
Events to store or create text.
Type | Behavior | Input | Output | Example(s) |
---|---|---|---|---|
String | Stores and relays a text string. | None | The string. | =String("Jedi Council") |
Matches | Finds all values that match a provided regular expression. | A list, a string, or text. | A list of matches found within the input. | =Matches("\d{1,}") |
Text | Write and create long strings of text using liquid syntax. | None | The text as a string. | =Text(""" I am Ishmael. """) |
Generators
Events that produce numeric or text values when executed.
Type | Behavior | Input | Output | Example(s) |
---|---|---|---|---|
Source | Generates a stream of numeric values. | Number | A stream of numeric values. | =Source(100k) =Source(100k @ 3%) =Source(100k...110k @ 3%) |
Gpt | Generate text by calling OpenAI's GPT with a provided prompt. | An Object defining a prompt | The content of GPT's response as text. | =Gpt('gpt-4-turbo', 'sk-myopenaikey') |
Curve | Generates numeric values based on a specified curve shape. | None | A stream of numeric values. | =Curve('s', [365, 1k]) |
Trend | From a list of numeric values, generates a trended series of values. | None | A stream of numeric values. | =Trend([12.1k,15.5k,13.6k,14.4k]) =Trend([100,300,200,225]) |
Extend | Extends a list of numeric values using the slope between the last two values of the provided input. | None | A stream of numeric values. | =Extend([1,2,3,10]) |
Containers
Events that store numeric value.
Type | Behavior | Example(s) |
---|---|---|
Pool | Collects numeric values with no limit. | =Pool(1.4m) =Pool(1.4m @ 1%) |
Pipe | Relays numeric values downstream. | =Pipe(0) =Pipe(0, 100) |
Bucket | Collects numeric values up to a specified limit; overflow passes downstream. | =Bucket(0, 500) |
Tipping Bucket | Collects numeric values up to a limit; empties when limit is reached. | =Tippingbucket(0, 500) |
Funnel | Releases a specified amount of numeric value from its store each time it is triggered. | =Funnel(100k, 200) |
Gate | Opens on a schedule, releasing all of the numeric value it has collected. Any value not sent downstream is retained. | =Gate(0) |
Silo | Stores numeric value in a container; container has a minimum and maximum size. Excess value and overdraws are passed downstream. | =Silo(100, [-50, 1k]) =Silo(100, [-100,]) |
Wheel | Stores numeric value in a rotating list that follows a calendar. | =Wheel(12) =Wheel(4, [250, 200, 175, 99]) |
Base | Stores numeric values in a list; sends the sum of those values to downstream events. Second argument specifies retention by cohort. | =Base([] @ [95, 65, 54, 32, 23]%) |
Timers
Events to manage time for simulation models.
Transforms
Events to alter a value.
Type | Behavior | Example(s) |
---|---|---|
Transform | Modify the value (or list of values) received before relaying it downstream. | =T('max') =T('numbers') =T('abs') =T('round') =T('liters', 'gallons') =T('yards', 'meters') =T('kilometers', 'miles') |
Conditionals
Events to test values.
Triggers
Events to control the simulated timing of other events.
Event | Behavior | Example(s) |
---|---|---|
Every | Cause downstream events to execute on a specific schedule within a simulation model. | =Every("0 8,17 * * 1-5"<hours_of_operation>, 'America/Chicago'<timezone>) |
Tiering & Scale
Events to split values into arrays to perform matrix multiplication.
Tunnels
Events to connect models.
Event | Behavior | Example(s) |
---|---|---|
Tunnel | Connect to an event from a different model. | =Tunnel("SaaS Marketing Model::Total Marketing Budget") |
Updated 8 days ago
What’s Next