Proto Reference
Complete Protocol Buffer schema definitions.
events/v1/event.proto
protobuf
syntax = "proto3";
package matchstick.events.v1;
import "google/protobuf/timestamp.proto";
import "google/protobuf/struct.proto";
message Event {
string id = 1;
string event_type = 2;
string issuer = 3;
string cik = 4;
google.protobuf.Timestamp filed_at = 5;
google.protobuf.Timestamp captured_at = 6;
float confidence = 7;
google.protobuf.Struct metadata = 8;
}
message EventIndex {
string id = 1;
string event_type = 2;
string issuer = 3;
string cik = 4;
google.protobuf.Timestamp filed_at = 5;
}bars/v1/bar.proto
protobuf
syntax = "proto3";
package matchstick.bars.v1;
import "google/protobuf/timestamp.proto";
message Bar {
string symbol = 1;
Timeframe timeframe = 2;
google.protobuf.Timestamp timestamp = 3;
double open = 4;
double high = 5;
double low = 6;
double close = 7;
int64 volume = 8;
int32 trade_count = 9;
double vwap = 10;
}
enum Timeframe {
TIMEFRAME_UNSPECIFIED = 0;
TIMEFRAME_1M = 1;
TIMEFRAME_5M = 2;
TIMEFRAME_15M = 3;
TIMEFRAME_1H = 4;
TIMEFRAME_4H = 5;
TIMEFRAME_1D = 6;
TIMEFRAME_1W = 7;
}lineage/v1/lineage.proto
protobuf
syntax = "proto3";
package matchstick.lineage.v1;
import "google/protobuf/timestamp.proto";
message Lineage {
string id = 1;
string artifact_id = 2;
string artifact_type = 3;
Source source = 4;
repeated Transformation transformations = 5;
google.protobuf.Timestamp created_at = 6;
}
message Source {
string source_type = 1;
string source_id = 2;
string source_url = 3;
string content_hash = 4;
google.protobuf.Timestamp fetched_at = 5;
}
message Transformation {
string name = 1;
string version = 2;
repeated string input_ids = 3;
map<string, string> parameters = 4;
google.protobuf.Timestamp executed_at = 5;
}manifests/v1/manifest.proto
protobuf
syntax = "proto3";
package matchstick.manifests.v1;
import "google/protobuf/timestamp.proto";
message Manifest {
string id = 1;
string name = 2;
string description = 3;
string version = 4;
repeated DataFile files = 5;
ManifestMetadata metadata = 6;
google.protobuf.Timestamp created_at = 7;
}
message DataFile {
string path = 1;
FileFormat format = 2;
int64 size_bytes = 3;
string checksum = 4;
int64 row_count = 5;
string schema_id = 6;
}
enum FileFormat {
FILE_FORMAT_UNSPECIFIED = 0;
FILE_FORMAT_PARQUET = 1;
FILE_FORMAT_CSV = 2;
FILE_FORMAT_JSON = 3;
FILE_FORMAT_PROTO = 4;
}
message ManifestMetadata {
google.protobuf.Timestamp start_date = 1;
google.protobuf.Timestamp end_date = 2;
string source = 3;
string update_frequency = 4;
string license = 5;
}