Documentation
¶
Overview ¶
Package tir2 provides primitives to interact with the openapi HTTP API.
Code generated by github.com/deepmap/oapi-codegen version v1.13.0 DO NOT EDIT.
Index ¶
- Constants
- Variables
- func NewGetDIDDocumentRequest(server string, did Did, params *GetDIDDocumentParams) (*http.Request, error)
- type AuthorizingHttpClient
- type Base64TokenEncoder
- type Claim
- type Client
- type ClientInterface
- type ClientOption
- type ClientWithResponses
- type ClientWithResponsesInterface
- type Credential
- type DIDDocument
- type DIDDocument_VerificationMethod_Item
- func (t DIDDocument_VerificationMethod_Item) AsJsonWebKey2020VerificationMethod() (JsonWebKey2020VerificationMethod, error)
- func (t DIDDocument_VerificationMethod_Item) AsRsaVerificationKey2018VerificationMethod() (RsaVerificationKey2018VerificationMethod, error)
- func (t DIDDocument_VerificationMethod_Item) Discriminator() (string, error)
- func (t *DIDDocument_VerificationMethod_Item) FromJsonWebKey2020VerificationMethod(v JsonWebKey2020VerificationMethod) error
- func (t *DIDDocument_VerificationMethod_Item) FromRsaVerificationKey2018VerificationMethod(v RsaVerificationKey2018VerificationMethod) error
- func (t DIDDocument_VerificationMethod_Item) MarshalJSON() ([]byte, error)
- func (t *DIDDocument_VerificationMethod_Item) MergeJsonWebKey2020VerificationMethod(v JsonWebKey2020VerificationMethod) error
- func (t *DIDDocument_VerificationMethod_Item) MergeRsaVerificationKey2018VerificationMethod(v RsaVerificationKey2018VerificationMethod) error
- func (t *DIDDocument_VerificationMethod_Item) UnmarshalJSON(b []byte) error
- func (t DIDDocument_VerificationMethod_Item) ValueByDiscriminator() (interface{}, error)
- type Did
- type GetDIDDocumentParams
- type GetDIDDocumentResponse
- type HttpGetClient
- type HttpRequestDoer
- type IssuerAttribute
- type JWK
- type JsonWebKey2020VerificationMethod
- type M2MTokenProvider
- type NoAuthHttpClient
- type ProblemDetails
- type RS256Signer
- type RequestEditorFn
- type RsaVerificationKey2018VerificationMethod
- type TimeRange
- type TirClient
- type TirHttpClient
- type TokenEncoder
- type TokenProvider
- type TokenResponse
- type TrustedIssuer
- type ValidAt
- type VerificationMethod
Constants ¶
const DID_V4_Path = "v4/identifiers"
const ISSUERS_V3_PATH = "v3/issuers"
const ISSUERS_V4_PATH = "v4/issuers"
const SCOPE_TIR_READ = "tir_read"
const TirEndpointsCache = "tirEndpoints"
const WELL_KNOWN_ENDPOINT = "/.well-known/openid-configuration"
Variables ¶
var ErrorBadPrivateKey = errors.New("bad_private_key_length")
var ErrorCachedOpenidMetadataNotFound = errors.New("cached_openid_metadata_not_found")
var ErrorGrantTypeNotSupported = errors.New("grant_type_not_supported")
var ErrorMetaDataNotOk = errors.New("no_metadata_available")
var ErrorScopeNotSupported = errors.New("scope_not_supported")
var ErrorTirEmptyResponse = errors.New("empty_response_from_tir")
var ErrorTirNoResponse = errors.New("no_response_from_tir")
var ErrorTokenEndpointNoResponse = errors.New("no_response_from_token_endpoint")
http client to be used
var ErrorTokenProviderNoDid = errors.New("no_did_configured")
var ErrorTokenProviderNoKey = errors.New("no_key_configured")
var ErrorTokenProviderNoVC = errors.New("no_vc_configured")
var ErrorTokenProviderNoVerificationMethod = errors.New("no_verification_method_configured")
Functions ¶
func NewGetDIDDocumentRequest ¶
func NewGetDIDDocumentRequest(server string, did Did, params *GetDIDDocumentParams) (*http.Request, error)
NewGetDIDDocumentRequest generates requests for GetDIDDocument
Types ¶
type AuthorizingHttpClient ¶
type AuthorizingHttpClient struct {
// contains filtered or unexported fields
}
func (AuthorizingHttpClient) FillMetadataCache ¶
func (ac AuthorizingHttpClient) FillMetadataCache(context.Context)
type Base64TokenEncoder ¶
type Base64TokenEncoder struct{}
func (Base64TokenEncoder) GetEncodedToken ¶
func (base64TokenEncoder Base64TokenEncoder) GetEncodedToken(vc *verifiable.Presentation, audience string) (encodedToken string, err error)
type Client ¶
type Client struct {
// The endpoint of the server conforming to this interface, with scheme,
// https://api.deepmap.com for example. This can contain a path relative
// to the server, such as https://api.deepmap.com/dev-test, and all the
// paths in the swagger spec will be appended to the server.
Server string
// Doer for performing requests, typically a *http.Client with any
// customized settings, such as certificate chains.
Client HttpRequestDoer
// A list of callbacks for modifying requests which are generated before sending over
// the network.
RequestEditors []RequestEditorFn
}
Client which conforms to the OpenAPI3 specification for this service.
func NewClient ¶
func NewClient(server string, opts ...ClientOption) (*Client, error)
Creates a new Client, with reasonable defaults
func (*Client) GetDIDDocument ¶
func (c *Client) GetDIDDocument(ctx context.Context, did Did, params *GetDIDDocumentParams, reqEditors ...RequestEditorFn) (*http.Response, error)
type ClientInterface ¶
type ClientInterface interface {
// GetDIDDocument request
GetDIDDocument(ctx context.Context, did Did, params *GetDIDDocumentParams, reqEditors ...RequestEditorFn) (*http.Response, error)
}
The interface specification for the client above.
type ClientOption ¶
ClientOption allows setting custom parameters during construction
func WithHTTPClient ¶
func WithHTTPClient(doer HttpRequestDoer) ClientOption
WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.
func WithRequestEditorFn ¶
func WithRequestEditorFn(fn RequestEditorFn) ClientOption
WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.
type ClientWithResponses ¶
type ClientWithResponses struct {
ClientInterface
}
ClientWithResponses builds on ClientInterface to offer response payloads
func NewClientWithResponses ¶
func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)
NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling
func (*ClientWithResponses) GetDIDDocumentWithResponse ¶
func (c *ClientWithResponses) GetDIDDocumentWithResponse(ctx context.Context, did Did, params *GetDIDDocumentParams, reqEditors ...RequestEditorFn) (*GetDIDDocumentResponse, error)
GetDIDDocumentWithResponse request returning *GetDIDDocumentResponse
type ClientWithResponsesInterface ¶
type ClientWithResponsesInterface interface {
// GetDIDDocument request
GetDIDDocumentWithResponse(ctx context.Context, did Did, params *GetDIDDocumentParams, reqEditors ...RequestEditorFn) (*GetDIDDocumentResponse, error)
}
ClientWithResponsesInterface is the interface specification for the client with responses above.
type Credential ¶
type Credential struct {
ValidFor TimeRange `json:"validFor"`
CredentialsType string `json:"credentialsType"`
Claims []Claim `json:"claims"`
}
* * Configuration of a credentialType, its validity time and the claims allowed to be issued
type DIDDocument ¶
type DIDDocument struct {
// Context Context used for describing the document
Context []string `json:"@context"`
Id string `json:"id"`
VerificationMethod *[]DIDDocument_VerificationMethod_Item `json:"verificationMethod,omitempty"`
}
DIDDocument defines model for DIDDocument.
type DIDDocument_VerificationMethod_Item ¶
type DIDDocument_VerificationMethod_Item struct {
// contains filtered or unexported fields
}
DIDDocument_VerificationMethod_Item defines model for DIDDocument.verificationMethod.Item.
func (DIDDocument_VerificationMethod_Item) AsJsonWebKey2020VerificationMethod ¶
func (t DIDDocument_VerificationMethod_Item) AsJsonWebKey2020VerificationMethod() (JsonWebKey2020VerificationMethod, error)
AsJsonWebKey2020VerificationMethod returns the union data inside the DIDDocument_VerificationMethod_Item as a JsonWebKey2020VerificationMethod
func (DIDDocument_VerificationMethod_Item) AsRsaVerificationKey2018VerificationMethod ¶
func (t DIDDocument_VerificationMethod_Item) AsRsaVerificationKey2018VerificationMethod() (RsaVerificationKey2018VerificationMethod, error)
AsRsaVerificationKey2018VerificationMethod returns the union data inside the DIDDocument_VerificationMethod_Item as a RsaVerificationKey2018VerificationMethod
func (DIDDocument_VerificationMethod_Item) Discriminator ¶
func (t DIDDocument_VerificationMethod_Item) Discriminator() (string, error)
func (*DIDDocument_VerificationMethod_Item) FromJsonWebKey2020VerificationMethod ¶
func (t *DIDDocument_VerificationMethod_Item) FromJsonWebKey2020VerificationMethod(v JsonWebKey2020VerificationMethod) error
FromJsonWebKey2020VerificationMethod overwrites any union data inside the DIDDocument_VerificationMethod_Item as the provided JsonWebKey2020VerificationMethod
func (*DIDDocument_VerificationMethod_Item) FromRsaVerificationKey2018VerificationMethod ¶
func (t *DIDDocument_VerificationMethod_Item) FromRsaVerificationKey2018VerificationMethod(v RsaVerificationKey2018VerificationMethod) error
FromRsaVerificationKey2018VerificationMethod overwrites any union data inside the DIDDocument_VerificationMethod_Item as the provided RsaVerificationKey2018VerificationMethod
func (DIDDocument_VerificationMethod_Item) MarshalJSON ¶
func (t DIDDocument_VerificationMethod_Item) MarshalJSON() ([]byte, error)
func (*DIDDocument_VerificationMethod_Item) MergeJsonWebKey2020VerificationMethod ¶
func (t *DIDDocument_VerificationMethod_Item) MergeJsonWebKey2020VerificationMethod(v JsonWebKey2020VerificationMethod) error
MergeJsonWebKey2020VerificationMethod performs a merge with any union data inside the DIDDocument_VerificationMethod_Item, using the provided JsonWebKey2020VerificationMethod
func (*DIDDocument_VerificationMethod_Item) MergeRsaVerificationKey2018VerificationMethod ¶
func (t *DIDDocument_VerificationMethod_Item) MergeRsaVerificationKey2018VerificationMethod(v RsaVerificationKey2018VerificationMethod) error
MergeRsaVerificationKey2018VerificationMethod performs a merge with any union data inside the DIDDocument_VerificationMethod_Item, using the provided RsaVerificationKey2018VerificationMethod
func (*DIDDocument_VerificationMethod_Item) UnmarshalJSON ¶
func (t *DIDDocument_VerificationMethod_Item) UnmarshalJSON(b []byte) error
func (DIDDocument_VerificationMethod_Item) ValueByDiscriminator ¶
func (t DIDDocument_VerificationMethod_Item) ValueByDiscriminator() (interface{}, error)
type GetDIDDocumentParams ¶
type GetDIDDocumentParams struct {
// ValidAt This option is used to get a the version in the past of a DID document. It must be a date in ISO-8601 format
ValidAt *ValidAt `form:"valid-at,omitempty" json:"valid-at,omitempty"`
}
GetDIDDocumentParams defines parameters for GetDIDDocument.
type GetDIDDocumentResponse ¶
type GetDIDDocumentResponse struct {
Body []byte
HTTPResponse *http.Response
JSON200 *DIDDocument
JSON400 *ProblemDetails
JSON404 *ProblemDetails
JSON500 *ProblemDetails
}
func ParseGetDIDDocumentResponse ¶
func ParseGetDIDDocumentResponse(rsp *http.Response) (*GetDIDDocumentResponse, error)
ParseGetDIDDocumentResponse parses an HTTP response from a GetDIDDocumentWithResponse call
func (GetDIDDocumentResponse) Status ¶
func (r GetDIDDocumentResponse) Status() string
Status returns HTTPResponse.Status
func (GetDIDDocumentResponse) StatusCode ¶
func (r GetDIDDocumentResponse) StatusCode() int
StatusCode returns HTTPResponse.StatusCode
type HttpGetClient ¶
type HttpRequestDoer ¶
Doer performs HTTP requests.
The standard http.Client implements this interface.
type IssuerAttribute ¶
type IssuerAttribute struct {
Hash string `json:"hash"`
Body string `json:"body"`
IssuerType string `json:"issuerType"`
Tao string `json:"tao"`
RootTao string `json:"rootTao"`
}
* * Attribute of an issuer
type JWK ¶
type JWK struct {
Alg *string `json:"alg,omitempty"`
E *string `json:"e,omitempty"`
Kid *string `json:"kid,omitempty"`
Kty *string `json:"kty,omitempty"`
N *string `json:"n,omitempty"`
Use *string `json:"use,omitempty"`
X5c *[]string `json:"x5c,omitempty"`
X5u *string `json:"x5u,omitempty"`
}
JWK defines model for JWK.
type JsonWebKey2020VerificationMethod ¶
type JsonWebKey2020VerificationMethod struct {
Controller *string `json:"controller,omitempty"`
Id *string `json:"id,omitempty"`
PublicKeyJwk *JWK `json:"publicKeyJwk,omitempty"`
Type *string `json:"type,omitempty"`
}
JsonWebKey2020VerificationMethod defines model for JsonWebKey2020VerificationMethod.
type M2MTokenProvider ¶
type M2MTokenProvider struct {
// contains filtered or unexported fields
}
func (M2MTokenProvider) GetAuthCredential ¶
func (tokenProvider M2MTokenProvider) GetAuthCredential() (vc *verifiable.Credential, err error)
func (M2MTokenProvider) GetToken ¶
func (tokenProvider M2MTokenProvider) GetToken(vc *verifiable.Credential, audience string) (token string, err error)
type NoAuthHttpClient ¶
type NoAuthHttpClient struct {
// contains filtered or unexported fields
}
type ProblemDetails ¶
type ProblemDetails struct {
// Detail A human readable explanation specific to this occurrence of the problem.
Detail *string `json:"detail,omitempty"`
// Instance An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
Instance *string `json:"instance,omitempty"`
// Status The HTTP status code generated by the origin server for this occurrence of the problem.
Status *float32 `json:"status,omitempty"`
// Title A short summary of the problem type.
Title *string `json:"title,omitempty"`
// Type An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type.
Type *string `json:"type,omitempty"`
}
ProblemDetails defines model for ProblemDetails.
type RS256Signer ¶
type RS256Signer struct {
// contains filtered or unexported fields
}
RS256Signer is a Jose complient signer.
func NewRS256Signer ¶
func NewRS256Signer(privKey *rsa.PrivateKey) *RS256Signer
NewRS256Signer creates RS256Signer.
type RequestEditorFn ¶
RequestEditorFn is the function signature for the RequestEditor callback function
type RsaVerificationKey2018VerificationMethod ¶
type RsaVerificationKey2018VerificationMethod struct {
Controller *string `json:"controller,omitempty"`
Id *string `json:"id,omitempty"`
PublicKeyJwk *JWK `json:"publicKeyJwk,omitempty"`
Type *string `json:"type,omitempty"`
}
RsaVerificationKey2018VerificationMethod defines model for RsaVerificationKey2018VerificationMethod.
type TirClient ¶
type TirClient interface {
IsTrustedParticipant(tirEndpoints string, did string) (trusted bool)
GetTrustedIssuer(tirEndpoints []string, did string) (exists bool, trustedIssuer TrustedIssuer, err error)
}
func NewTirHttpClient ¶
type TirHttpClient ¶
type TirHttpClient struct {
// contains filtered or unexported fields
}
* * A client to retrieve infromation from EBSI-compatible TrustedIssuerRegistry APIs.
func (TirHttpClient) GetTrustedIssuer ¶
func (tc TirHttpClient) GetTrustedIssuer(tirEndpoints []string, did string) (exists bool, trustedIssuer TrustedIssuer, err error)
func (TirHttpClient) IsTrustedParticipant ¶
func (tc TirHttpClient) IsTrustedParticipant(tirEndpoint string, did string) (trusted bool)
type TokenEncoder ¶
type TokenEncoder interface {
GetEncodedToken(vp *verifiable.Presentation, audience string) (encodedToken string, err error)
}
type TokenProvider ¶
type TokenProvider interface {
GetToken(vc *verifiable.Credential, audience string) (string, error)
GetAuthCredential() (vc *verifiable.Credential, err error)
}
func InitM2MTokenProvider ¶
func InitM2MTokenProvider(config *configModel.Configuration, clock common.Clock) (tokenProvider TokenProvider, err error)
type TokenResponse ¶
type TokenResponse struct {
TokenType string `json:"token_type,omitempty"`
// The lifetime in seconds of the access token
ExpiresIn float32 `json:"expires_in,omitempty"`
AccessToken string `json:"access_token,omitempty"`
// The scope of the access token
Scope string `json:"scope,omitempty"`
// ID Token value associated with the authenticated session. Presents client's identity. ID Token is issued in a JWS format. See also the \"ID Token\" schema definition.
IdToken string `json:"id_token,omitempty"`
}
type TrustedIssuer ¶
type TrustedIssuer struct {
Did string `json:"did"`
Attributes []IssuerAttribute `json:"attributes"`
}
* * A trusted issuer as defined by EBSI
type VerificationMethod ¶
type VerificationMethod struct {
Id *string `json:"id,omitempty"`
Type *string `json:"type,omitempty"`
}
VerificationMethod defines model for VerificationMethod.