Documentation ¶
Index ¶
- type CreateEventRequest
- type ErrorResponse
- type GetPublicKeyResponse
- type GetTeamResponse
- type GetTeamRosterResponse
- type ListRequestsToJoinTeamResponse
- type ListSecretsResponse
- type RequestToJoinTeam
- type RequestToJoinTeamRequest
- type Secret
- type SecretMetadata
- type SendSecretRequest
- type TeamRosterAndSignature
- type UpsertPublicKeyRequest
- type UpsertPublicKeyResponse
- type UpsertPublicKeySignedData
- type UpsertTeamRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateEventRequest ¶
type CreateEventRequest struct { // Name is the name of the event, e.g. `error_updating_team` Name string `json:"name"` RelatedKeyFingerprint string `json:"relatedKeyFingerprint"` RelatedTeamUUID string `json:"relatedTeamUUID"` Error string `json:"error"` }
CreateEventRequest is the JSON structure containing an event to be logged from Fluidkeys client.
type ErrorResponse ¶
type ErrorResponse struct { // Detail is a human-readable string describing the error. Detail string `json:"detail"` }
ErrorResponse is the JSON structure returned when the API encounters an error.
type GetPublicKeyResponse ¶
type GetPublicKeyResponse struct { // ArmoredPublicKey is the ASCII-armored OpenPGP public key. ArmoredPublicKey string `json:"armoredPublicKey"` }
GetPublicKeyResponse is the JSON structure returned by the get public key API endpoint. See: https://github.com/fluidkeys/api/blob/master/README.md#get-a-public-key
type GetTeamResponse ¶
type GetTeamResponse struct {
Name string `json:"name"`
}
GetTeamResponse is the JSON structure returned by the get team API endpoint.
type GetTeamRosterResponse ¶
type GetTeamRosterResponse struct { // EncryptedMetadata [DEPRECATED] is an ASCII-armored encrypted PGP message which decrypts to a // `TeamRosterAndSignature` JSON structure. EncryptedJSON string `json:"encryptedJSON"` // TeamRoster describes the members and configuration of a team. // See github.com/fluidkeys/fluidkeys/teamroster TeamRoster string `json:"teamRoster"` // The ASCII-armored detached signature of the team roster. // In GnuPG this would be generated by typing: // // > gpg --armor --output roster.toml.sig --detach-sig roster.toml ArmoredDetachedSignature string `json:"armoredDetachedSignature"` }
GetTeamRosterResponse is the JSON structure containing the team's roster and detached signature, encrypted to the key that requested it.
type ListRequestsToJoinTeamResponse ¶
type ListRequestsToJoinTeamResponse struct {
Requests []RequestToJoinTeam `json:"requests"`
}
ListRequestsToJoinTeamResponse is the JSON structure returned by the list requests to join team API endpoint.
type ListSecretsResponse ¶
type ListSecretsResponse struct {
Secrets []Secret `json:"secrets"`
}
ListSecretsResponse is the JSON structure returned by the list secrets API endpoint. See: https://github.com/fluidkeys/api/blob/master/README.md#list-your-secrets
type RequestToJoinTeam ¶
type RequestToJoinTeam struct { UUID string `json:"uuid"` Fingerprint string `json:"fingerprint"` Email string `json:"email"` }
RequestToJoinTeam is the JSON structure containg the data for a request to join a team returned by the list requests to join team API endpoint.
type RequestToJoinTeamRequest ¶
type RequestToJoinTeamRequest struct {
TeamEmail string `json:"teamEmail"`
}
RequestToJoinTeamRequest is the JSON structure used for requests to the request to join team API enndpoint.
type Secret ¶
type Secret struct { // EncryptedMetadata is an ASCII-armored encrypted PGP message which // decrypts to a `SecretMetadata` JSON structure. EncryptedMetadata string `json:"encryptedMetadata"` // EncryptedContent is an ASCII-armored encrypted PGP message // containing the actual content of the secret. EncryptedContent string `json:"encryptedContent"` }
Secret is the JSON structure containing the metadata and content for an encrypted secret returned by the list secrets API endpoint.
type SecretMetadata ¶
type SecretMetadata struct { // SecretUUID uniquely identifies the secret to the API SecretUUID string `json:"secretUuid"` }
SecretMetadata contains non-content information about an encrypted secret.
type SendSecretRequest ¶
type SendSecretRequest struct { RecipientFingerprint string `json:"recipientFingerprint"` ArmoredEncryptedSecret string `json:"armoredEncryptedSecret"` }
SendSecretRequest is the JSON structure used for requests to the send secret API endpoint. See: https://github.com/fluidkeys/api/blob/master/README.md#send-a-secret-to-a-public-key
type TeamRosterAndSignature ¶
type TeamRosterAndSignature struct { // TeamRoster describes the members and configuration of a team. // See github.com/fluidkeys/fluidkeys/teamroster TeamRoster string `json:"teamRoster"` // The ASCII-armored detached signature of the team roster. // In GnuPG this would be generated by typing: // // > gpg --armor --output roster.toml.sig --detach-sig roster.toml ArmoredDetachedSignature string `json:"armoredDetachedSignature"` }
TeamRosterAndSignature contains a TOML team roster and an armored detached OpenPGP signature.
type UpsertPublicKeyRequest ¶
type UpsertPublicKeyRequest struct { // ArmoredPublicKey is the public key to be created or updated ArmoredPublicKey string `json:"armoredPublicKey"` // ArmoredSignedJSON is an ASCII-armored message, decoding to a JSON // message which decodes as an UpsertPublicKeySignedData ArmoredSignedJSON string `json:"armoredSignedJSON"` }
UpsertPublicKeyRequest is a request to create or update a public key.
type UpsertPublicKeyResponse ¶
type UpsertPublicKeyResponse struct { // ArmoredEncryptedBasicAuthPassword, when decrypted, contains a // system-generated password that can be used to authenticate // subsequent API calls using HTTP basic auth. ArmoredEncryptedBasicAuthPassword string `json:"armoredEncryptedBasicAuthPassword"` }
UpsertPublicKeyResponse is the JSON response returned from the upsert public key endpoint.
type UpsertPublicKeySignedData ¶
type UpsertPublicKeySignedData struct { // The client's current time which must be within 24 hours of the // server's timestamp Timestamp time.Time `json:"timestamp"` // SingleUseUUID is a random UUID that is used once and must not be used // again. Its purpose is to prevent replay attacks where signed JSON // is re-sent to the API at a later date (possibly at a different // endpoint) SingleUseUUID string `json:"singleUseUuid"` // PublicKeySHA256 is the SHA256 hash of the ArmoredPublicKey in the // outer request PublicKeySHA256 string `json:"publicKeySha256"` }
UpsertPublicKeySignedData is data self-signed by the public key being upserted to ensure that only the owner of a public key can upload it (a third party can't generate a valid signature)
type UpsertTeamRequest ¶
type UpsertTeamRequest = TeamRosterAndSignature
UpsertTeamRequest is the JSON structure containing a signed team roster.