Documentation
¶
Index ¶
- Constants
- Variables
- func CheckIDMatch(id, target ulid.ULID) error
- func CheckUUIDMatch(id, target uuid.UUID) error
- func IsAPIRequest(c *gin.Context) bool
- type Render
- type Server
- func (s *Server) APIDocs(c *gin.Context)
- func (s *Server) APIEnabled() gin.HandlerFunc
- func (s *Server) APIKeyDetail(c *gin.Context)
- func (s *Server) APIKeys(c *gin.Context)
- func (s *Server) About(c *gin.Context)
- func (s *Server) AcceptTransaction(c *gin.Context)
- func (s *Server) AcceptTransactionPreview(c *gin.Context)
- func (s *Server) AccountDetail(c *gin.Context)
- func (s *Server) Accounts(c *gin.Context)
- func (s *Server) ArchiveTransaction(c *gin.Context)
- func (s *Server) Authenticate(c *gin.Context)
- func (s *Server) ChangePassword(c *gin.Context)
- func (s *Server) ChangeUserPassword(c *gin.Context)
- func (s *Server) ContactDetail(c *gin.Context)
- func (s *Server) CounterpartyDetail(c *gin.Context)
- func (s *Server) CounterpartyFromTravelAddress(c *gin.Context, address string) (cp *models.Counterparty, err error)
- func (s *Server) CounterpartyVasps(c *gin.Context)
- func (s *Server) CreateAPIKey(c *gin.Context)
- func (s *Server) CreateAccount(c *gin.Context)
- func (s *Server) CreateContact(c *gin.Context)
- func (s *Server) CreateCounterparty(c *gin.Context)
- func (s *Server) CreateCryptoAddress(c *gin.Context)
- func (s *Server) CreateTransaction(c *gin.Context)
- func (s *Server) CreateUser(c *gin.Context)
- func (s *Server) CryptoAddressDetail(c *gin.Context)
- func (s *Server) DBInfo(c *gin.Context)
- func (s *Server) Debug(c *gin.Context)
- func (s *Server) DecodeTravelAddress(c *gin.Context)
- func (s *Server) Decrypt(in *models.SecureEnvelope) (out *envelope.Envelope, err error)
- func (s *Server) DeleteAPIKey(c *gin.Context)
- func (s *Server) DeleteAccount(c *gin.Context)
- func (s *Server) DeleteContact(c *gin.Context)
- func (s *Server) DeleteCounterparty(c *gin.Context)
- func (s *Server) DeleteCryptoAddress(c *gin.Context)
- func (s *Server) DeleteTransaction(c *gin.Context)
- func (s *Server) DeleteUser(c *gin.Context)
- func (s *Server) EncodeTravelAddress(c *gin.Context)
- func (s *Server) ExportTransactions(c *gin.Context)
- func (s *Server) GetComplianceName() string
- func (s *Server) Healthz(c *gin.Context)
- func (s *Server) Home(c *gin.Context)
- func (s *Server) LatestPayloadEnvelope(c *gin.Context)
- func (s *Server) ListAPIKeys(c *gin.Context)
- func (s *Server) ListAccounts(c *gin.Context)
- func (s *Server) ListContacts(c *gin.Context)
- func (s *Server) ListCounterparties(c *gin.Context)
- func (s *Server) ListCryptoAddresses(c *gin.Context)
- func (s *Server) ListSecureEnvelopes(c *gin.Context)
- func (s *Server) ListTransactions(c *gin.Context)
- func (s *Server) ListUsers(c *gin.Context)
- func (s *Server) Localparty(ctx context.Context) (_ *models.Counterparty, err error)
- func (s *Server) Login(c *gin.Context)
- func (s *Server) LoginPage(c *gin.Context)
- func (s *Server) Logout(c *gin.Context)
- func (s *Server) Maintenance() gin.HandlerFunc
- func (s *Server) NotAllowed(c *gin.Context)
- func (s *Server) NotFound(c *gin.Context)
- func (s *Server) OpenAPI(c *gin.Context)
- func (s *Server) PrepareTransaction(c *gin.Context)
- func (s *Server) Readyz(c *gin.Context)
- func (s *Server) Reauthenticate(c *gin.Context)
- func (s *Server) RejectTransaction(c *gin.Context)
- func (s *Server) RepairTransaction(c *gin.Context)
- func (s *Server) RepairTransactionPreview(c *gin.Context)
- func (s *Server) SearchCounterparties(c *gin.Context)
- func (s *Server) SecureEnvelopeDetail(c *gin.Context)
- func (s *Server) SendEnvelope(ctx context.Context, packet *postman.TRISAPacket) (err error)
- func (s *Server) SendEnvelopeForTransaction(c *gin.Context)
- func (s *Server) SendEnvelopeForm(c *gin.Context)
- func (s *Server) SendMessageForm(c *gin.Context)
- func (s *Server) SendPreparedTransaction(c *gin.Context)
- func (s *Server) SendSunrise(c *gin.Context)
- func (s *Server) SendTRISATransfer(ctx context.Context, p *postman.TRISAPacket) (err error)
- func (s *Server) Serve(errc chan<- error) (err error)
- func (s *Server) SetStatus(health, ready bool)
- func (s *Server) SetSunriseAuthCookies(c *gin.Context, model *models.Sunrise) (err error)
- func (s *Server) Shutdown() (err error)
- func (s *Server) Status(c *gin.Context)
- func (s *Server) SunriseAuthenticate(issuer *auth.ClaimsIssuer) gin.HandlerFunc
- func (s *Server) SunriseEnabled() gin.HandlerFunc
- func (s *Server) SunriseMessageAccept(c *gin.Context)
- func (s *Server) SunriseMessageDownload(c *gin.Context)
- func (s *Server) SunriseMessageReject(c *gin.Context)
- func (s *Server) SunriseMessageReview(c *gin.Context)
- func (s *Server) TransactionDetail(c *gin.Context)
- func (s *Server) Transactions(c *gin.Context)
- func (s *Server) TransactionsAcceptPreview(c *gin.Context)
- func (s *Server) TransactionsInfo(c *gin.Context)
- func (s *Server) TransactionsRepairPreview(c *gin.Context)
- func (s *Server) TravelAddressUtility(c *gin.Context)
- func (s *Server) UIEnabled() gin.HandlerFunc
- func (s *Server) URL() string
- func (s *Server) UpdateAPIKey(c *gin.Context)
- func (s *Server) UpdateAPIKeyPreview(c *gin.Context)
- func (s *Server) UpdateAccount(c *gin.Context)
- func (s *Server) UpdateAccountPreview(c *gin.Context)
- func (s *Server) UpdateContact(c *gin.Context)
- func (s *Server) UpdateCounterparty(c *gin.Context)
- func (s *Server) UpdateCounterpartyPreview(c *gin.Context)
- func (s *Server) UpdateCryptoAddress(c *gin.Context)
- func (s *Server) UpdateTransaction(c *gin.Context)
- func (s *Server) UpdateUser(c *gin.Context)
- func (s *Server) UserDetail(c *gin.Context)
- func (s *Server) UserProfile(c *gin.Context)
- func (s *Server) UsersManagement(c *gin.Context)
- func (s *Server) ValidateIVMS101(c *gin.Context)
- func (s *Server) VerifySunriseUser(c *gin.Context)
Constants ¶
const ( ContentDisposition = "Content-Disposition" ContentType = "Content-Type" AcceptLength = "Accept-Length" ContentTypeCSV = "text/csv" )
const GenericComplianceName = "A VASP Compliance Team using TRISA Envoy"
Variables ¶
var ( ErrNoTRISAEndpoint = errors.New("cannot construct trisa travel address: no trisa endpoint defined") ErrNoLocalCommonName = errors.New("invalid configuration: no common name in trisa endpoint configuration") ErrNoLocalparty = errors.New("could not lookup local vasp counterparty from database, please try again later") ErrNotAccepted = errors.New("the accepted formats are not offered by the server") ErrNoPublicKey = errors.New("no public key associated with secure envelope") ErrSunriseSubject = errors.New("invalid subject type for sunrise review") ErrMissingID = errors.New("id required for this resource") ErrIDMismatch = errors.New("resource id does not match target") )
var TransactionsHeader = []string{
"ID", "Status", "Counterparty", "Originator", "Originator Address",
"Beneficiary", "Beneficiary Address", "Virtual Asset", "Amount",
"Last Update", "Created", "Number of Envelopes", "HMAC Signature",
}
Functions ¶
func CheckIDMatch ¶ added in v0.30.0
CheckIDMatch returns an error if the id is Null or it does not match the target.
func CheckUUIDMatch ¶
func IsAPIRequest ¶ added in v0.16.0
Determines if the request being handled is an API request by inspecting the request path and Accept header. If the request path starts in /v1 and the Accept header is nil or json, then this function returns true.
Types ¶
type Render ¶
type Render struct {
// contains filtered or unexported fields
}
func (*Render) AddPattern ¶
type Server ¶
The Web Server implements the compliance and administrative user interfaces.
func Debug ¶
func Debug(conf config.Config, store store.Store, network network.Network, srv *http.Server) (s *Server, err error)
Debug returns a server that uses the specified http server instead of creating one. This function is primarily used to create test servers easily.
func (*Server) APIEnabled ¶ added in v0.16.0
func (s *Server) APIEnabled() gin.HandlerFunc
If the API is disabled, this middleware factory function returns a middleware that returns 529 Unavailable on all API requests. If the API is enabled, it returns nil and should not be used as a middleware function.
func (*Server) APIKeyDetail ¶ added in v0.24.1
func (*Server) AcceptTransaction ¶ added in v0.14.0
func (*Server) AcceptTransactionPreview ¶ added in v0.12.0
func (*Server) AccountDetail ¶
func (*Server) ArchiveTransaction ¶ added in v0.29.0
func (*Server) Authenticate ¶
func (*Server) ChangePassword ¶ added in v0.18.0
func (*Server) ChangeUserPassword ¶ added in v0.18.0
func (*Server) ContactDetail ¶ added in v0.28.0
func (*Server) CounterpartyDetail ¶
func (*Server) CounterpartyFromTravelAddress ¶
func (*Server) CounterpartyVasps ¶
func (*Server) CreateAPIKey ¶ added in v0.24.1
func (*Server) CreateAccount ¶
func (*Server) CreateContact ¶ added in v0.28.0
func (*Server) CreateCounterparty ¶
func (*Server) CreateCryptoAddress ¶
func (*Server) CreateTransaction ¶
func (*Server) CreateUser ¶ added in v0.18.0
func (*Server) CryptoAddressDetail ¶
func (*Server) DBInfo ¶ added in v0.28.0
DBInfo reports the database connection status and information if available, otherwise returns a 501 Not Implemented http error.
func (*Server) DecodeTravelAddress ¶ added in v0.12.0
Decode a travel address into a URL or its other contents.
func (*Server) DeleteAPIKey ¶ added in v0.24.1
func (*Server) DeleteAccount ¶
func (*Server) DeleteContact ¶ added in v0.28.0
func (*Server) DeleteCounterparty ¶
func (*Server) DeleteCryptoAddress ¶
func (*Server) DeleteTransaction ¶
func (*Server) DeleteUser ¶ added in v0.18.0
func (*Server) EncodeTravelAddress ¶ added in v0.12.0
Convert a URL or other data into a travel address.
func (*Server) ExportTransactions ¶
func (*Server) GetComplianceName ¶ added in v0.28.0
func (*Server) LatestPayloadEnvelope ¶ added in v0.24.0
func (*Server) ListAPIKeys ¶ added in v0.24.1
func (*Server) ListAccounts ¶
func (*Server) ListContacts ¶ added in v0.28.0
func (*Server) ListCounterparties ¶
func (*Server) ListCryptoAddresses ¶
func (*Server) ListSecureEnvelopes ¶
func (*Server) ListTransactions ¶
func (*Server) Localparty ¶
Localparty returns the VASP information for the current node.
func (*Server) Maintenance ¶
func (s *Server) Maintenance() gin.HandlerFunc
If the server is in maintenance mode, aborts the current request and renders the maintenance mode page instead. Returns nil if not in maintenance mode.
func (*Server) NotAllowed ¶
Renders the "invalid action page"
func (*Server) PrepareTransaction ¶
func (*Server) Reauthenticate ¶
func (*Server) RejectTransaction ¶ added in v0.14.0
func (*Server) RepairTransaction ¶ added in v0.24.0
func (*Server) RepairTransactionPreview ¶ added in v0.24.0
func (*Server) SearchCounterparties ¶ added in v0.23.0
func (*Server) SecureEnvelopeDetail ¶
func (*Server) SendEnvelope ¶ added in v0.14.0
SendEnvelope performs the bulk of the work to send a TRISA or TRP transaction to the counterparty specified and storing both the outgoing and incoming secure envelopes in the database. This method is used to send the prepared transaction, to send envelopes for a transaction, and in the accept/reject workflows.
func (*Server) SendEnvelopeForTransaction ¶ added in v0.14.0
func (*Server) SendEnvelopeForm ¶
func (*Server) SendMessageForm ¶ added in v0.28.0
func (*Server) SendPreparedTransaction ¶
func (*Server) SendSunrise ¶ added in v0.28.0
func (*Server) SendTRISATransfer ¶
func (*Server) Serve ¶
Serve the compliance and administrative user interfaces in its own go routine.
func (*Server) SetStatus ¶
SetStatus sets the health and ready status on the server, modifying the behavior of the kubernetes probe responses.
func (*Server) SetSunriseAuthCookies ¶ added in v0.28.0
func (*Server) SunriseAuthenticate ¶ added in v0.28.0
func (s *Server) SunriseAuthenticate(issuer *auth.ClaimsIssuer) gin.HandlerFunc
Authenticates sunrise users verifying the access token in the request. Does not allow API or JSON requests to be authenticated and the claims must have a sunrise subject. If the user is not authenticated they are redirected to the sunrise_404.html page.
This middleware should only be on routes intended for use by sunrise users.
func (*Server) SunriseEnabled ¶ added in v0.28.0
func (s *Server) SunriseEnabled() gin.HandlerFunc
Aborts the request with a 404 error if sunrise is not enabled.
func (*Server) SunriseMessageAccept ¶ added in v0.28.0
func (*Server) SunriseMessageDownload ¶ added in v0.30.0
func (*Server) SunriseMessageReject ¶ added in v0.28.0
func (*Server) SunriseMessageReview ¶ added in v0.28.0
func (*Server) TransactionDetail ¶
func (*Server) Transactions ¶
func (*Server) TransactionsAcceptPreview ¶ added in v0.12.0
func (*Server) TransactionsInfo ¶ added in v0.12.0
func (*Server) TransactionsRepairPreview ¶ added in v0.24.1
func (*Server) TravelAddressUtility ¶ added in v0.12.0
func (*Server) UIEnabled ¶ added in v0.16.0
func (s *Server) UIEnabled() gin.HandlerFunc
If the UI is disabled, this middleware factory function returrns a middleware that returns 529 Unvailable on all UI requests. If the UI is enabled, it returns nil.
func (*Server) URL ¶
URL returns the endpoint of the server as determined by the configuration and the socket address and port (if specified).
func (*Server) UpdateAPIKey ¶ added in v0.24.1
func (*Server) UpdateAPIKeyPreview ¶ added in v0.27.0
func (*Server) UpdateAccount ¶
func (*Server) UpdateAccountPreview ¶
func (*Server) UpdateContact ¶ added in v0.28.0
func (*Server) UpdateCounterparty ¶
func (*Server) UpdateCounterpartyPreview ¶
func (*Server) UpdateCryptoAddress ¶
func (*Server) UpdateTransaction ¶
func (*Server) UpdateUser ¶ added in v0.18.0
func (*Server) UserDetail ¶ added in v0.18.0
func (*Server) UserProfile ¶ added in v0.18.0
func (*Server) UsersManagement ¶ added in v0.18.0
func (*Server) ValidateIVMS101 ¶ added in v0.29.0
func (*Server) VerifySunriseUser ¶ added in v0.28.0
The incoming request should be coming from a compliance officer at a VASP who has received a sunrise message. The request should include a verification token, otherwise a 404 is returned. If the verification token is valid, this endpoint will send a OTP to the user's email address, which the user must type in as a secondary check that they do indeed have access to the email address the message was sent to. If the token is expired, the user can request a new verification token sent to their email address. If the token is completed, e.g. the user has already logged in with it at least once; they can do the OTP passcheck and receive access to the data.
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
api
|
|
|
Scene provides well structured template contexts and functionality for HTML template rendering.
|
Scene provides well structured template contexts and functionality for HTML template rendering. |