bff for callbacks
This commit is contained in:
41
api/pkg/model/callback.go
Normal file
41
api/pkg/model/callback.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package model
|
||||
|
||||
import "github.com/tech/sendico/pkg/mservice"
|
||||
|
||||
type CallbackStatus string
|
||||
|
||||
const (
|
||||
CallbackStatusActive CallbackStatus = "active"
|
||||
CallbackStatusDisabled CallbackStatus = "disabled"
|
||||
)
|
||||
|
||||
type CallbackSigningMode string
|
||||
|
||||
const (
|
||||
CallbackSigningModeNone CallbackSigningMode = "none"
|
||||
CallbackSigningModeHMACSHA256 CallbackSigningMode = "hmac_sha256"
|
||||
)
|
||||
|
||||
type CallbackRetryPolicy struct {
|
||||
MinDelayMS int `bson:"min_ms" json:"minDelayMs"`
|
||||
MaxDelayMS int `bson:"max_ms" json:"maxDelayMs"`
|
||||
SigningMode CallbackSigningMode `bson:"signing_mode" json:"signingMode"`
|
||||
SecretRef string `bson:"secret_ref,omitempty" json:"secretRef,omitempty"`
|
||||
Headers map[string]string `bson:"headers,omitempty" json:"headers,omitempty"`
|
||||
MaxAttempts int `bson:"max_attempts" json:"maxAttempts"`
|
||||
RequestTimeoutMS int `bson:"request_timeout_ms" json:"requestTimeoutMs"`
|
||||
}
|
||||
|
||||
type Callback struct {
|
||||
PermissionBound `bson:",inline" json:",inline"`
|
||||
Describable `bson:",inline" json:",inline"`
|
||||
ClientID string `bson:"client_id" json:"clientId"`
|
||||
Status CallbackStatus `bson:"status" json:"status"`
|
||||
URL string `bson:"url" json:"url"`
|
||||
EventTypes []string `bson:"event_types" json:"eventTypes"`
|
||||
RetryPolicy CallbackRetryPolicy `bson:"retry_policy" json:"retryPolicy"`
|
||||
}
|
||||
|
||||
func (*Callback) Collection() string {
|
||||
return mservice.Callbacks
|
||||
}
|
||||
Reference in New Issue
Block a user