You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
okapi/okapi-service-config.proto

74 lines
1.5 KiB

syntax = "proto3";
import "google/protobuf/struct.proto";
option go_package = "whiteboxsystems.nl/okapi";
// ConfigureCallback
message ProtocolAuthConfiguration {
string method = 1;
google.protobuf.Struct configuration = 2;
}
enum SubscriptionPolicy {
subnone = 0;
optin = 1;
optout = 2;
}
enum ConsentPolicy {
consentnone = 0;
explicit = 1;
presumed = 2;
}
message ProtocolDefinition {
string protocol = 1;
repeated string authMethods = 2;
}
message ServiceDefinition {
string id = 1;
string name = 2;
string description = 3;
SubscriptionPolicy subscriptionPolicy = 4;
ConsentPolicy consentPolicy = 5;
repeated ProtocolDefinition fetchProtocols = 6;
repeated ProtocolDefinition pushProtocols = 7;
}
message CallbackConfiguration {
string protocol = 1;
google.protobuf.Struct configuration = 2;
ProtocolAuthConfiguration auth = 3;
}
message ConfigureCallbackRequest {
string serviceId = 1;
bool enabled = 2;
CallbackConfiguration fetch = 3;
CallbackConfiguration push = 4;
}
message ConfigureCallbackResponse {
string serviceId = 1;
bool enabled = 2;
CallbackConfiguration fetch = 3;
CallbackConfiguration push = 4;
}
// ListServices
message ServiceConfiguration {
string serviceId = 1;
bool enabled = 2;
CallbackConfiguration fetch = 3;
CallbackConfiguration push = 4;
}
message ListServicesRequest {
}
message ListServicesResponse {
repeated ServiceDefinition availableServices = 1;
repeated ServiceConfiguration configurations = 2;
}