Files
gru_emoney_token-factory/api/packages/grpc/adapter.proto
defiQUG 651ff4f7eb Initial project setup: Add contracts, API definitions, tests, and documentation
- Add Foundry project configuration (foundry.toml, foundry.lock)
- Add Solidity contracts (TokenFactory138, BridgeVault138, ComplianceRegistry, etc.)
- Add API definitions (OpenAPI, GraphQL, gRPC, AsyncAPI)
- Add comprehensive test suite (unit, integration, fuzz, invariants)
- Add API services (REST, GraphQL, orchestrator, packet service)
- Add documentation (ISO20022 mapping, runbooks, adapter guides)
- Add development tools (RBC tool, Swagger UI, mock server)
- Update OpenZeppelin submodules to v5.0.0
2025-12-12 10:59:41 -08:00

57 lines
1.2 KiB
Protocol Buffer

syntax = "proto3";
package emoney.adapter.v1;
option go_package = "github.com/emoney/adapter/v1;adapterv1";
// Adapter service for rail integrations (Fedwire/SWIFT/SEPA/RTGS)
service AdapterService {
// Submit message to rail
rpc SubmitToRail(SubmitToRailRequest) returns (SubmitToRailResponse);
// Get rail status
rpc GetRailStatus(GetRailStatusRequest) returns (GetRailStatusResponse);
// Stream rail status updates
rpc StreamRailStatus(StreamRailStatusRequest) returns (stream RailStatusUpdate);
}
message SubmitToRailRequest {
string trigger_id = 1;
string rail = 2;
string msg_type = 3;
bytes payload = 4;
string instruction_id = 5;
}
message SubmitToRailResponse {
string trigger_id = 1;
string rail_tx_ref = 2;
bool accepted = 3;
string error = 4;
}
message GetRailStatusRequest {
string rail_tx_ref = 1;
string rail = 2;
}
message GetRailStatusResponse {
string rail_tx_ref = 1;
string status = 2;
string settlement_date = 3;
string error = 4;
}
message StreamRailStatusRequest {
string trigger_id = 1;
}
message RailStatusUpdate {
string trigger_id = 1;
string rail_tx_ref = 2;
string status = 3;
int64 timestamp = 4;
}