-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathtypedb-service.proto
54 lines (41 loc) · 2.25 KB
/
typedb-service.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
syntax = "proto3";
import "proto/authentication.proto";
import "proto/connection.proto";
import "proto/database.proto";
import "proto/server.proto";
import "proto/user.proto";
import "proto/transaction.proto";
package typedb.protocol;
service TypeDB {
// Connection API
rpc connection_open (Connection.Open.Req) returns (Connection.Open.Res);
// Authentication API
rpc authentication_token_create (Authentication.Token.Create.Req) returns (Authentication.Token.Create.Res);
// Server Manager API
rpc servers_all (ServerManager.All.Req) returns (ServerManager.All.Res);
// User Manager API
rpc users_get (UserManager.Get.Req) returns (UserManager.Get.Res);
rpc users_all (UserManager.All.Req) returns (UserManager.All.Res);
rpc users_contains (UserManager.Contains.Req) returns (UserManager.Contains.Res);
rpc users_create (UserManager.Create.Req) returns (UserManager.Create.Res);
// User API
rpc users_update (User.Update.Req) returns (User.Update.Res);
rpc users_delete (User.Delete.Req) returns (User.Delete.Res);
// Database Manager API
rpc databases_get (DatabaseManager.Get.Req) returns (DatabaseManager.Get.Res);
rpc databases_all (DatabaseManager.All.Req) returns (DatabaseManager.All.Res);
rpc databases_contains (DatabaseManager.Contains.Req) returns (DatabaseManager.Contains.Res);
rpc databases_create (DatabaseManager.Create.Req) returns (DatabaseManager.Create.Res);
// Database API
rpc database_schema (Database.Schema.Req) returns (Database.Schema.Res);
rpc database_type_schema (Database.TypeSchema.Req) returns (Database.TypeSchema.Res);
rpc database_delete (Database.Delete.Req) returns (Database.Delete.Res);
// Transaction Streaming API
// Opens a bi-directional stream representing a stateful transaction, streaming
// requests and responses back-and-forth. The first transaction client message must
// be {Transaction.Open.Req}. Closing the stream closes the transaction.
rpc transaction (stream Transaction.Client) returns (stream Transaction.Server);
}