Documentation
¶
Overview ¶
Code generated by typeshare 1.13.2. DO NOT EDIT.
Index ¶
- Constants
- Variables
- type AddressFieldDetails
- type AllowedRecipientType
- type AllowedType
- type AutofillBehavior
- type Client
- type ClientOption
- type DocumentCreateParams
- type ErrorMessage
- type FileAttributes
- type FileCreateParams
- type GeneratePasswordResponse
- type Item
- type ItemCategory
- type ItemCreateParams
- type ItemField
- type ItemFieldDetails
- type ItemFieldDetailsTypes
- type ItemFieldType
- type ItemFile
- type ItemListFilter
- type ItemListFilterByStateInner
- type ItemListFilterTypes
- type ItemOverview
- type ItemSection
- type ItemShareAccountPolicy
- type ItemShareDuration
- type ItemShareFiles
- type ItemShareParams
- type ItemState
- type ItemsAPI
- type ItemsFilesAPI
- type ItemsFilesSource
- func (i ItemsFilesSource) Attach(ctx context.Context, item Item, fileParams FileCreateParams) (Item, error)
- func (i ItemsFilesSource) Delete(ctx context.Context, item Item, sectionID string, fieldID string) (Item, error)
- func (i ItemsFilesSource) Read(ctx context.Context, vaultID string, itemID string, attr FileAttributes) ([]byte, error)
- func (i ItemsFilesSource) ReplaceDocument(ctx context.Context, item Item, docParams DocumentCreateParams) (Item, error)
- type ItemsSharesAPI
- type ItemsSharesSource
- func (i ItemsSharesSource) Create(ctx context.Context, item Item, policy ItemShareAccountPolicy, ...) (string, error)
- func (i ItemsSharesSource) GetAccountPolicy(ctx context.Context, vaultID string, itemID string) (ItemShareAccountPolicy, error)
- func (i ItemsSharesSource) ValidateRecipients(ctx context.Context, policy ItemShareAccountPolicy, recipients []string) ([]ValidRecipient, error)
- type ItemsSource
- func (i ItemsSource) Archive(ctx context.Context, vaultID string, itemID string) error
- func (i ItemsSource) Create(ctx context.Context, params ItemCreateParams) (Item, error)
- func (i ItemsSource) Delete(ctx context.Context, vaultID string, itemID string) error
- func (i ItemsSource) Files() ItemsFilesAPI
- func (i ItemsSource) Get(ctx context.Context, vaultID string, itemID string) (Item, error)
- func (i ItemsSource) List(ctx context.Context, vaultID string, filters ...ItemListFilter) ([]ItemOverview, error)
- func (i ItemsSource) Put(ctx context.Context, item Item) (Item, error)
- func (i ItemsSource) Shares() ItemsSharesAPI
- type OTPFieldDetails
- type PasswordRecipe
- type PasswordRecipeMemorableInner
- type PasswordRecipePinInner
- type PasswordRecipeRandomInner
- type PasswordRecipeTypes
- type RateLimitExceededError
- type ResolveAllResponse
- type ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantFieldNotFound() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantIncompatibleSSHKeyQueryParameterField() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantIncompatibleTOTPQueryParameterField() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantItemNotFound() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantNoMatchingSections() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantOther() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantParsing(content ErrorMessage) ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantSSHKeyMetadataNotFound() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantTooManyItems() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantTooManyMatchingFields() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantTooManyVaults() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantUnableToFormatPrivateKeyToOpenSSH() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantUnableToGenerateTOTPCode(content ErrorMessage) ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantUnableToParsePrivateKey() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantUnsupportedFileFormat() ResolveReferenceError
- func NewResolveReferenceErrorTypeVariantVaultNotFound() ResolveReferenceError
- type ResolveReferenceErrorTypes
- type ResolvedReference
- type Response
- type SSHKeyAttributes
- type SecretsAPI
- type SecretsSource
- type SeparatorType
- type ValidRecipient
- type ValidRecipientDomainInner
- type ValidRecipientEmailInner
- type ValidRecipientTypes
- type VaultOverview
- type VaultsAPI
- type VaultsSource
- type Website
- type WordListType
Constants ¶
const ( DefaultIntegrationName = "Unknown" DefaultIntegrationVersion = "Unknown" )
Variables ¶
var Secrets = secretsUtil{}
Functions ¶
This section is empty.
Types ¶
type AddressFieldDetails ¶ added in v0.2.1
type AddressFieldDetails struct { // The street address Street string `json:"street"` // The city City string `json:"city"` // The country Country string `json:"country"` // The ZIP code Zip string `json:"zip"` // The state State string `json:"state"` }
Additional attributes for OTP fields.
type AllowedRecipientType ¶ added in v0.1.6
type AllowedRecipientType string
The allowed recipient types of item sharing, enforced by account policy
const ( // Recipients can be specified by email address AllowedRecipientTypeEmail AllowedRecipientType = "Email" // Recipients can be specified by domain AllowedRecipientTypeDomain AllowedRecipientType = "Domain" )
type AllowedType ¶ added in v0.1.6
type AllowedType string
The allowed types of item sharing, enforced by account policy
const ( // Allows creating share links with specific recipients AllowedTypeAuthenticated AllowedType = "Authenticated" // Allows creating public share links AllowedTypePublic AllowedType = "Public" )
type AutofillBehavior ¶ added in v0.1.3
type AutofillBehavior string
Controls the auto-fill behavior of a website.
For more information, visit https://support.1password.com/autofill-behavior/
const ( // Auto-fill any page that’s part of the website, including subdomains AutofillBehaviorAnywhereOnWebsite AutofillBehavior = "AnywhereOnWebsite" // Auto-fill only if the domain (hostname and port) is an exact match. AutofillBehaviorExactDomain AutofillBehavior = "ExactDomain" // Never auto-fill on this website AutofillBehaviorNever AutofillBehavior = "Never" )
type Client ¶
type Client struct { SecretsAPI SecretsAPI ItemsAPI ItemsAPI VaultsAPI VaultsAPI // contains filtered or unexported fields }
Client represents an instance of the 1Password Go SDK client.
func NewClient ¶
func NewClient(ctx context.Context, opts ...ClientOption) (*Client, error)
NewClient returns a 1Password Go SDK client using the provided ClientOption list.
func (*Client) Secrets ¶
func (c *Client) Secrets() SecretsAPI
type ClientOption ¶
func WithIntegrationInfo ¶
func WithIntegrationInfo(name string, version string) ClientOption
WithIntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
func WithServiceAccountToken ¶
func WithServiceAccountToken(token string) ClientOption
WithServiceAccountToken specifies the [1Password Service Account](https://developer.1password.com/docs/service-accounts) token to use to authenticate the SDK client. Read more about how to get started with service accounts: https://developer.1password.com/docs/service-accounts/get-started/#create-a-service-account
type DocumentCreateParams ¶ added in v0.2.0
type ErrorMessage ¶ added in v0.2.1
type ErrorMessage string
type FileAttributes ¶ added in v0.2.0
type FileCreateParams ¶ added in v0.2.0
type FileCreateParams struct { // The name of the file Name string `json:"name"` // The content of the file Content []byte `json:"content"` // The section id where the file should be stored SectionID string `json:"sectionId"` // The field id where the file should be stored FieldID string `json:"fieldId"` }
type GeneratePasswordResponse ¶ added in v0.1.5
type GeneratePasswordResponse struct { // The generated password. Password string `json:"password"` }
For future use, if we want to return more information about the generated password. Currently, it only returns the password itself.
type Item ¶
type Item struct { // The item's ID ID string `json:"id"` // The item's title Title string `json:"title"` // The item's category Category ItemCategory `json:"category"` // The ID of the vault where the item is saved VaultID string `json:"vaultId"` // The item's fields Fields []ItemField `json:"fields"` // The item's sections Sections []ItemSection `json:"sections"` // The notes of the item Notes string `json:"notes"` // The item's tags Tags []string `json:"tags"` // The websites used for autofilling for items of the Login and Password categories. Websites []Website `json:"websites"` // The item's version Version uint32 `json:"version"` // The item's file fields Files []ItemFile `json:"files"` // The document file for the Document item category Document *FileAttributes `json:"document,omitempty"` // The time the item was created at CreatedAt time.Time `json:"createdAt"` // The time the item was updated at UpdatedAt time.Time `json:"updatedAt"` }
Represents an active 1Password item.
type ItemCategory ¶
type ItemCategory string
const ( ItemCategoryLogin ItemCategory = "Login" ItemCategorySecureNote ItemCategory = "SecureNote" ItemCategoryCreditCard ItemCategory = "CreditCard" ItemCategoryCryptoWallet ItemCategory = "CryptoWallet" ItemCategoryIdentity ItemCategory = "Identity" ItemCategoryPassword ItemCategory = "Password" ItemCategoryDocument ItemCategory = "Document" ItemCategoryAPICredentials ItemCategory = "ApiCredentials" ItemCategoryBankAccount ItemCategory = "BankAccount" ItemCategoryDatabase ItemCategory = "Database" ItemCategoryDriverLicense ItemCategory = "DriverLicense" ItemCategoryEmail ItemCategory = "Email" ItemCategoryMedicalRecord ItemCategory = "MedicalRecord" ItemCategoryMembership ItemCategory = "Membership" ItemCategoryOutdoorLicense ItemCategory = "OutdoorLicense" ItemCategoryPassport ItemCategory = "Passport" ItemCategoryRewards ItemCategory = "Rewards" ItemCategoryRouter ItemCategory = "Router" ItemCategoryServer ItemCategory = "Server" ItemCategorySSHKey ItemCategory = "SshKey" ItemCategorySocialSecurityNumber ItemCategory = "SocialSecurityNumber" ItemCategorySoftwareLicense ItemCategory = "SoftwareLicense" ItemCategoryPerson ItemCategory = "Person" ItemCategoryUnsupported ItemCategory = "Unsupported" )
type ItemCreateParams ¶
type ItemCreateParams struct { // The item's category Category ItemCategory `json:"category"` // The ID of the vault where the item is saved VaultID string `json:"vaultId"` // The item's title Title string `json:"title"` // The item's fields Fields []ItemField `json:"fields,omitempty"` // The item's sections Sections []ItemSection `json:"sections,omitempty"` // The item's notes Notes *string `json:"notes,omitempty"` // The item's tags Tags []string `json:"tags,omitempty"` // The websites used for autofilling for items of the Login and Password categories. Websites []Website `json:"websites,omitempty"` // The item's files stored as fields Files []FileCreateParams `json:"files,omitempty"` // The document file for the Document item type. Empty when the item isn't of Document type. Document *DocumentCreateParams `json:"document,omitempty"` }
type ItemField ¶
type ItemField struct { // The field's ID ID string `json:"id"` // The field's title Title string `json:"title"` // The ID of the section containing the field. Built-in fields such as usernames and passwords don't require a section. SectionID *string `json:"sectionId,omitempty"` // The field's type FieldType ItemFieldType `json:"fieldType"` // The string representation of the field's value Value string `json:"value"` // Field type-specific attributes. Details *ItemFieldDetails `json:"details,omitempty"` }
Represents a field within an item.
type ItemFieldDetails ¶
type ItemFieldDetails struct { Type ItemFieldDetailsTypes `json:"type"` // contains filtered or unexported fields }
func NewItemFieldDetailsTypeVariantAddress ¶ added in v0.2.1
func NewItemFieldDetailsTypeVariantAddress(content *AddressFieldDetails) ItemFieldDetails
func NewItemFieldDetailsTypeVariantOTP ¶
func NewItemFieldDetailsTypeVariantOTP(content *OTPFieldDetails) ItemFieldDetails
func NewItemFieldDetailsTypeVariantSSHKey ¶ added in v0.2.0
func NewItemFieldDetailsTypeVariantSSHKey(content *SSHKeyAttributes) ItemFieldDetails
func (ItemFieldDetails) Address ¶ added in v0.2.1
func (i ItemFieldDetails) Address() *AddressFieldDetails
func (ItemFieldDetails) MarshalJSON ¶
func (i ItemFieldDetails) MarshalJSON() ([]byte, error)
func (ItemFieldDetails) OTP ¶
func (i ItemFieldDetails) OTP() *OTPFieldDetails
func (ItemFieldDetails) SSHKey ¶ added in v0.2.0
func (i ItemFieldDetails) SSHKey() *SSHKeyAttributes
func (*ItemFieldDetails) UnmarshalJSON ¶
func (i *ItemFieldDetails) UnmarshalJSON(data []byte) error
type ItemFieldDetailsTypes ¶
type ItemFieldDetailsTypes string
Field type-specific attributes.
const ( // The computed OTP code and other details ItemFieldDetailsTypeVariantOTP ItemFieldDetailsTypes = "Otp" // Computed SSH Key attributes ItemFieldDetailsTypeVariantSSHKey ItemFieldDetailsTypes = "SshKey" // Address components ItemFieldDetailsTypeVariantAddress ItemFieldDetailsTypes = "Address" )
type ItemFieldType ¶
type ItemFieldType string
const ( ItemFieldTypeText ItemFieldType = "Text" ItemFieldTypeConcealed ItemFieldType = "Concealed" ItemFieldTypeCreditCardType ItemFieldType = "CreditCardType" ItemFieldTypeCreditCardNumber ItemFieldType = "CreditCardNumber" ItemFieldTypePhone ItemFieldType = "Phone" ItemFieldTypeURL ItemFieldType = "Url" ItemFieldTypeTOTP ItemFieldType = "Totp" ItemFieldTypeEmail ItemFieldType = "Email" ItemFieldTypeReference ItemFieldType = "Reference" ItemFieldTypeSSHKey ItemFieldType = "SshKey" ItemFieldTypeMenu ItemFieldType = "Menu" ItemFieldTypeMonthYear ItemFieldType = "MonthYear" ItemFieldTypeAddress ItemFieldType = "Address" ItemFieldTypeDate ItemFieldType = "Date" ItemFieldTypeUnsupported ItemFieldType = "Unsupported" )
type ItemFile ¶ added in v0.2.0
type ItemFile struct { // the attributes of the file Attributes FileAttributes `json:"attributes"` // the section id where the file should be stored SectionID string `json:"sectionId"` // the field id where the file should be stored FieldID string `json:"fieldId"` }
type ItemListFilter ¶ added in v0.3.0
type ItemListFilter struct { Type ItemListFilterTypes `json:"type"` // contains filtered or unexported fields }
func NewItemListFilterTypeVariantByState ¶ added in v0.3.0
func NewItemListFilterTypeVariantByState(content *ItemListFilterByStateInner) ItemListFilter
func (ItemListFilter) ByState ¶ added in v0.3.0
func (i ItemListFilter) ByState() *ItemListFilterByStateInner
func (ItemListFilter) MarshalJSON ¶ added in v0.3.0
func (i ItemListFilter) MarshalJSON() ([]byte, error)
func (*ItemListFilter) UnmarshalJSON ¶ added in v0.3.0
func (i *ItemListFilter) UnmarshalJSON(data []byte) error
type ItemListFilterByStateInner ¶ added in v0.3.0
type ItemListFilterByStateInner struct { Active bool `json:"active"` Archived bool `json:"archived"` }
Generated type representing the anonymous struct variant `ByState` of the `ItemListFilter` Rust enum
type ItemListFilterTypes ¶ added in v0.3.0
type ItemListFilterTypes string
const (
ItemListFilterTypeVariantByState ItemListFilterTypes = "ByState"
)
type ItemOverview ¶
type ItemOverview struct { // The item's ID ID string `json:"id"` // The item's title Title string `json:"title"` // The item's category Category ItemCategory `json:"category"` // The ID of the vault where the item is saved VaultID string `json:"vaultId"` // The websites used for autofilling for items of the Login and Password categories. Websites []Website `json:"websites"` // The item tags Tags []string `json:"tags"` // The time the item was created at CreatedAt time.Time `json:"createdAt"` // The time the item was updated at UpdatedAt time.Time `json:"updatedAt"` // Indicates the state of the item State ItemState `json:"state"` }
Represents a decrypted 1Password item overview.
type ItemSection ¶
type ItemSection struct { // The section's unique ID ID string `json:"id"` // The section's title Title string `json:"title"` }
A section groups together multiple fields in an item.
type ItemShareAccountPolicy ¶ added in v0.1.6
type ItemShareAccountPolicy struct { ItemShareDuration `json:"maxExpiry"` DefaultExpiry ItemShareDuration `json:"defaultExpiry"` MaxViews *uint32 `json:"maxViews,omitempty"` AllowedTypes []AllowedType `json:"allowedTypes"` AllowedRecipientTypes []AllowedRecipientType `json:"allowedRecipientTypes"` Files ItemShareFiles `json:"files"` }MaxExpiry
The account policy for sharing items, set by your account owner/admin This policy is enforced server-side when sharing items
type ItemShareDuration ¶ added in v0.1.6
type ItemShareDuration string
The valid duration options for sharing an item
const ( ItemShareDuration = "OneHour" ItemShareDurationOneDay ItemShareDuration = "OneDay" ItemShareDurationSevenDays ItemShareDuration = "SevenDays" ItemShareDurationFourteenDays ItemShareDuration = "FourteenDays" ItemShareDurationThirtyDays ItemShareDuration = "ThirtyDays" )ItemShareDurationOneHour
type ItemShareFiles ¶ added in v0.2.1
type ItemShareFiles struct { bool `json:"allowed"` MaxSize uint32 `json:"maxSize"` AllowedTypes []AllowedType `json:"allowedTypes,omitempty"` AllowedRecipientTypes []AllowedRecipientType `json:"allowedRecipientTypes,omitempty"` MaxExpiry *ItemShareDuration `json:"maxExpiry,omitempty"` DefaultExpiry *ItemShareDuration `json:"defaultExpiry,omitempty"` MaxViews *uint32 `json:"maxViews,omitempty"` }Allowed
The file sharing policy
type ItemShareParams ¶ added in v0.1.6
type ItemShareParams struct { ValidRecipient `json:"recipients,omitempty"` ExpireAfter *ItemShareDuration `json:"expireAfter,omitempty"` OneTimeOnly bool `json:"oneTimeOnly"` }Recipients []
The configuration options for sharing an item These must respect the account policy on item sharing
type ItemsAPI ¶
type ItemsAPI interface { // Create a new item. Create(ctx context.Context, params ItemCreateParams) (Item, error) // Get an item by vault and item ID Get(ctx context.Context, vaultID string, itemID string) (Item, error) // Update an existing item. Put(ctx context.Context, item Item) (Item, error) // Delete an item. Delete(ctx context.Context, vaultID string, itemID string) error // Archive an item. Archive(ctx context.Context, vaultID string, itemID string) error // List items based on filters. List(ctx context.Context, vaultID string, filters ...ItemListFilter) ([]ItemOverview, error) // ----- Sub APIs - these methods are used to access subordinate function groups ----- Files() ItemsFilesAPI }
The Items API holds all operations the SDK client can perform on 1Password items.
func NewItemsSource ¶
func NewItemsSource(inner internal.InnerClient) ItemsAPI
type ItemsFilesAPI ¶ added in v0.2.0
type ItemsFilesAPI interface { // Attach files to Items Attach(ctx context.Context, item Item, fileParams FileCreateParams) (Item, error) // Read file content from the Item Read(ctx context.Context, vaultID string, itemID string, attr FileAttributes) ([]byte, error) // Delete a field file from Item using the section and field IDs Delete(ctx context.Context, item Item, sectionID string, fieldID string) (Item, error) // Replace the document file within a document item ReplaceDocument(ctx context.Context, item Item, docParams DocumentCreateParams) (Item, error) }
func NewItemsFilesSource ¶ added in v0.2.0
func NewItemsFilesSource(inner internal.InnerClient) ItemsFilesAPI
type ItemsFilesSource ¶ added in v0.2.0
type ItemsFilesSource struct {
internal.InnerClient
}
func (ItemsFilesSource) Attach ¶ added in v0.2.0
func (i ItemsFilesSource) Attach(ctx context.Context, item Item, fileParams FileCreateParams) (Item, error)
Attach files to Items
func (ItemsFilesSource) Delete ¶ added in v0.2.0
func (i ItemsFilesSource) Delete(ctx context.Context, item Item, sectionID string, fieldID string) (Item, error)
Delete a field file from Item using the section and field IDs
func (ItemsFilesSource) Read ¶ added in v0.2.0
func (i ItemsFilesSource) Read(ctx context.Context, vaultID string, itemID string, attr FileAttributes) ([]byte, error)
Read file content from the Item
func (ItemsFilesSource) ReplaceDocument ¶ added in v0.2.0
func (i ItemsFilesSource) ReplaceDocument(ctx context.Context, item Item, docParams DocumentCreateParams) (Item, error)
Replace the document file within a document item
type ItemsSharesAPI ¶ added in v0.2.0
type ItemsSharesAPI interface { context.Context, vaultID string, itemID string) (ItemShareAccountPolicy, error) ValidateRecipients(ctx context.Context, policy ItemShareAccountPolicy, recipients []string) ([]ValidRecipient, error) Create(ctx context.Context, item Item, policy ItemShareAccountPolicy, params ItemShareParams) (string, error) }GetAccountPolicy(ctx
func NewItemsSharesSource ¶ added in v0.1.6
func NewItemsSharesSource(inner internal.InnerClient) ItemsSharesAPI
type ItemsSharesSource ¶ added in v0.1.6
type ItemsSharesSource struct {
}func (ItemsSharesSource) Create ¶ added in v0.1.6
func (i ItemsSharesSource) Create(ctx context.Context, item Item, policy ItemShareAccountPolicy, params ItemShareParams) (string, error)
Create a new item sharing link.
func (ItemsSharesSource) GetAccountPolicy ¶ added in v0.1.6
func (i ItemsSharesSource) GetAccountPolicy(ctx context.Context, vaultID string, itemID string) (ItemShareAccountPolicy, error)
Get the item sharing policy of your account.
func (ItemsSharesSource) ValidateRecipients ¶ added in v0.1.6
func (i ItemsSharesSource) ValidateRecipients(ctx context.Context, policy ItemShareAccountPolicy, recipients []string) ([]ValidRecipient, error)
Validate the recipients of an item sharing link.
type ItemsSource ¶
type ItemsSource struct { internal.InnerClient FilesAPI ItemsFilesAPI }
func (ItemsSource) Create ¶
func (i ItemsSource) Create(ctx context.Context, params ItemCreateParams) (Item, error)
Create a new item.
func (ItemsSource) Files ¶ added in v0.2.0
func (i ItemsSource) Files() ItemsFilesAPI
func (ItemsSource) List ¶ added in v0.3.0
func (i ItemsSource) List(ctx context.Context, vaultID string, filters ...ItemListFilter) ([]ItemOverview, error)
List items based on filters.
func (ItemsSource) Shares ¶ added in v0.1.6
func (i ItemsSource) Shares() ItemsSharesAPI
type OTPFieldDetails ¶
type OTPFieldDetails struct { // The OTP code, if successfully computed Code *string `json:"code,omitempty"` // The error message, if the OTP code could not be computed ErrorMessage *string `json:"errorMessage,omitempty"` }
Additional attributes for OTP fields.
type PasswordRecipe ¶ added in v0.1.5
type PasswordRecipe struct { Type PasswordRecipeTypes `json:"type"` // contains filtered or unexported fields }
func NewPasswordRecipeTypeVariantMemorable ¶ added in v0.1.5
func NewPasswordRecipeTypeVariantMemorable(content *PasswordRecipeMemorableInner) PasswordRecipe
func NewPasswordRecipeTypeVariantPin ¶ added in v0.1.5
func NewPasswordRecipeTypeVariantPin(content *PasswordRecipePinInner) PasswordRecipe
func NewPasswordRecipeTypeVariantRandom ¶ added in v0.1.5
func NewPasswordRecipeTypeVariantRandom(content *PasswordRecipeRandomInner) PasswordRecipe
func (PasswordRecipe) MarshalJSON ¶ added in v0.1.5
func (p PasswordRecipe) MarshalJSON() ([]byte, error)
func (PasswordRecipe) Memorable ¶ added in v0.1.5
func (p PasswordRecipe) Memorable() *PasswordRecipeMemorableInner
func (PasswordRecipe) Pin ¶ added in v0.1.5
func (p PasswordRecipe) Pin() *PasswordRecipePinInner
func (PasswordRecipe) Random ¶ added in v0.1.5
func (p PasswordRecipe) Random() *PasswordRecipeRandomInner
func (*PasswordRecipe) UnmarshalJSON ¶ added in v0.1.5
func (p *PasswordRecipe) UnmarshalJSON(data []byte) error
type PasswordRecipeMemorableInner ¶ added in v0.1.5
type PasswordRecipeMemorableInner struct { // The type of separator between chunks. SeparatorType SeparatorType `json:"separatorType"` // Uppercase one randomly selected chunk. Capitalize bool `json:"capitalize"` // The type of word list used. WordListType WordListType `json:"wordListType"` // The number of "words" (words or syllables). WordCount uint32 `json:"wordCount"` }
Generated type representing the anonymous struct variant `Memorable` of the `PasswordRecipe` Rust enum
type PasswordRecipePinInner ¶ added in v0.1.5
type PasswordRecipePinInner struct { // Number of digits in the PIN. Length uint32 `json:"length"` }
Generated type representing the anonymous struct variant `Pin` of the `PasswordRecipe` Rust enum
type PasswordRecipeRandomInner ¶ added in v0.1.5
type PasswordRecipeRandomInner struct { // Include at least one digit in the password. IncludeDigits bool `json:"includeDigits"` // Include at least one symbol in the password. IncludeSymbols bool `json:"includeSymbols"` // The length of the password. Length uint32 `json:"length"` }
Generated type representing the anonymous struct variant `Random` of the `PasswordRecipe` Rust enum
type PasswordRecipeTypes ¶ added in v0.1.5
type PasswordRecipeTypes string
const ( PasswordRecipeTypeVariantMemorable PasswordRecipeTypes = "Memorable" PasswordRecipeTypeVariantPin PasswordRecipeTypes = "Pin" PasswordRecipeTypeVariantRandom PasswordRecipeTypes = "Random" )
type RateLimitExceededError ¶ added in v0.1.7
type RateLimitExceededError struct {
// contains filtered or unexported fields
}
func (*RateLimitExceededError) Error ¶ added in v0.1.7
func (e *RateLimitExceededError) Error() string
type ResolveAllResponse ¶ added in v0.2.1
type ResolveAllResponse struct {
IndividualResponses map[string]Response[ResolvedReference, ResolveReferenceError] `json:"individualResponses"`
}
type ResolveReferenceError ¶ added in v0.2.1
type ResolveReferenceError struct { Type ResolveReferenceErrorTypes `json:"type"` // contains filtered or unexported fields }
func NewResolveReferenceErrorTypeVariantFieldNotFound ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantFieldNotFound() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantIncompatibleSSHKeyQueryParameterField ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantIncompatibleSSHKeyQueryParameterField() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantIncompatibleTOTPQueryParameterField ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantIncompatibleTOTPQueryParameterField() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantItemNotFound ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantItemNotFound() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantNoMatchingSections ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantNoMatchingSections() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantOther ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantOther() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantParsing ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantParsing(content ErrorMessage) ResolveReferenceError
func NewResolveReferenceErrorTypeVariantSSHKeyMetadataNotFound ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantSSHKeyMetadataNotFound() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantTooManyItems ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantTooManyItems() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantTooManyMatchingFields ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantTooManyMatchingFields() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantTooManyVaults ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantTooManyVaults() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantUnableToFormatPrivateKeyToOpenSSH ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantUnableToFormatPrivateKeyToOpenSSH() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantUnableToGenerateTOTPCode ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantUnableToGenerateTOTPCode(content ErrorMessage) ResolveReferenceError
func NewResolveReferenceErrorTypeVariantUnableToParsePrivateKey ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantUnableToParsePrivateKey() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantUnsupportedFileFormat ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantUnsupportedFileFormat() ResolveReferenceError
func NewResolveReferenceErrorTypeVariantVaultNotFound ¶ added in v0.2.1
func NewResolveReferenceErrorTypeVariantVaultNotFound() ResolveReferenceError
func (ResolveReferenceError) MarshalJSON ¶ added in v0.2.1
func (r ResolveReferenceError) MarshalJSON() ([]byte, error)
func (ResolveReferenceError) Parsing ¶ added in v0.2.1
func (r ResolveReferenceError) Parsing() ErrorMessage
func (ResolveReferenceError) UnableToGenerateTOTPCode ¶ added in v0.2.1
func (r ResolveReferenceError) UnableToGenerateTOTPCode() ErrorMessage
func (*ResolveReferenceError) UnmarshalJSON ¶ added in v0.2.1
func (r *ResolveReferenceError) UnmarshalJSON(data []byte) error
type ResolveReferenceErrorTypes ¶ added in v0.2.1
type ResolveReferenceErrorTypes string
const ( // Error parsing the secret reference ResolveReferenceErrorTypeVariantParsing ResolveReferenceErrorTypes = "parsing" // The specified reference cannot be found within the item ResolveReferenceErrorTypeVariantFieldNotFound ResolveReferenceErrorTypes = "fieldNotFound" // No vault matched the secret reference query ResolveReferenceErrorTypeVariantVaultNotFound ResolveReferenceErrorTypes = "vaultNotFound" // More than one vault matched the secret reference query ResolveReferenceErrorTypeVariantTooManyVaults ResolveReferenceErrorTypes = "tooManyVaults" // No item matched the secret reference query ResolveReferenceErrorTypeVariantItemNotFound ResolveReferenceErrorTypes = "itemNotFound" // More than one item matched the secret reference query ResolveReferenceErrorTypeVariantTooManyItems ResolveReferenceErrorTypes = "tooManyItems" // More than one field matched the provided secret reference ResolveReferenceErrorTypeVariantTooManyMatchingFields ResolveReferenceErrorTypes = "tooManyMatchingFields" // No section found within the item for the provided identifier ResolveReferenceErrorTypeVariantNoMatchingSections ResolveReferenceErrorTypes = "noMatchingSections" // Incompatiable TOTP query parameters ResolveReferenceErrorTypeVariantIncompatibleTOTPQueryParameterField ResolveReferenceErrorTypes = "incompatibleTOTPQueryParameterField" // The totp was not able to be generated ResolveReferenceErrorTypeVariantUnableToGenerateTOTPCode ResolveReferenceErrorTypes = "unableToGenerateTotpCode" // Couldn't find attributes specific to an SSH Key field ResolveReferenceErrorTypeVariantSSHKeyMetadataNotFound ResolveReferenceErrorTypes = "sSHKeyMetadataNotFound" // Currently only support text files ResolveReferenceErrorTypeVariantUnsupportedFileFormat ResolveReferenceErrorTypes = "unsupportedFileFormat" // Trying to convert a non-private key to a private key format ResolveReferenceErrorTypeVariantIncompatibleSSHKeyQueryParameterField ResolveReferenceErrorTypes = "incompatibleSshKeyQueryParameterField" // Unable to properly parse a private key string to convert to an internal Private Key type ResolveReferenceErrorTypeVariantUnableToParsePrivateKey ResolveReferenceErrorTypes = "unableToParsePrivateKey" // Unable to format a private key to OpenSSH format ResolveReferenceErrorTypeVariantUnableToFormatPrivateKeyToOpenSSH ResolveReferenceErrorTypes = "unableToFormatPrivateKeyToOpenSsh" // Other type ResolveReferenceErrorTypeVariantOther ResolveReferenceErrorTypes = "other" )
type ResolvedReference ¶ added in v0.2.1
type SSHKeyAttributes ¶ added in v0.2.0
type SecretsAPI ¶
type SecretsAPI interface { // Resolve returns the secret the provided secret reference points to. Resolve(ctx context.Context, secretReference string) (string, error) // Resolve takes in a list of secret references and returns the secrets they point to or errors if any. ResolveAll(ctx context.Context, secretReferences []string) (ResolveAllResponse, error) }
The Secrets API includes all operations the SDK client can perform on secrets. Use secret reference URIs to securely load secrets from 1Password: op://<vault-name>/<item-name>[/<section-name>]/<field-name>
func NewSecretsSource ¶
func NewSecretsSource(inner internal.InnerClient) SecretsAPI
type SecretsSource ¶
type SecretsSource struct {
internal.InnerClient
}
func (SecretsSource) ResolveAll ¶ added in v0.2.1
func (s SecretsSource) ResolveAll(ctx context.Context, secretReferences []string) (ResolveAllResponse, error)
Resolve takes in a list of secret references and returns the secrets they point to or errors if any.
type SeparatorType ¶ added in v0.1.5
type SeparatorType string
const ( // Randomly selected digits. // E.g, "`correct4horse0battery1staple`" SeparatorTypeDigits SeparatorType = "digits" // Randomly selected digits and symbols. // This is useful to get word-based passwords to meet complexity requirements // E.g, "`correct4horse-battery1staple`" SeparatorTypeDigitsAndSymbols SeparatorType = "digitsAndSymbols" // Spaces, like the original Diceware. // Great for mobile keyboards, not so great when people can overhear you type the password. // E.g, "`correct horse battery staple`" SeparatorTypeSpaces SeparatorType = "spaces" // Hyphens "`-`". // E.g, "`correct-horse-battery-staple`" SeparatorTypeHyphens SeparatorType = "hyphens" // "`_`". // E.g, "`correct_horse_battery_staple`" SeparatorTypeUnderscores SeparatorType = "underscores" // Period (full stop) "`.`". // E.g, "`correct.horse.battery.staple`" SeparatorTypePeriods SeparatorType = "periods" // Comma "`,`". // E.g, "`correct,horse,battery,staple`" SeparatorTypeCommas SeparatorType = "commas" )
type ValidRecipient ¶ added in v0.1.6
type ValidRecipient struct { Type ValidRecipientTypes `json:"type"` // contains filtered or unexported fields }
func NewValidRecipientTypeVariantDomain ¶ added in v0.1.6
func NewValidRecipientTypeVariantDomain(content *ValidRecipientDomainInner) ValidRecipient
func NewValidRecipientTypeVariantEmail ¶ added in v0.1.6
func NewValidRecipientTypeVariantEmail(content *ValidRecipientEmailInner) ValidRecipient
func (ValidRecipient) Domain ¶ added in v0.1.6
func (v ValidRecipient) Domain() *ValidRecipientDomainInner
func (ValidRecipient) Email ¶ added in v0.1.6
func (v ValidRecipient) Email() *ValidRecipientEmailInner
func (ValidRecipient) MarshalJSON ¶ added in v0.1.6
func (v ValidRecipient) MarshalJSON() ([]byte, error)
func (*ValidRecipient) UnmarshalJSON ¶ added in v0.1.6
func (v *ValidRecipient) UnmarshalJSON(data []byte) error
type ValidRecipientDomainInner ¶ added in v0.1.6
type ValidRecipientDomainInner struct {
Domain string `json:"domain"`
}
Generated type representing the anonymous struct variant `Domain` of the `ValidRecipient` Rust enum
type ValidRecipientEmailInner ¶ added in v0.1.6
type ValidRecipientEmailInner struct {
Email string `json:"email"`
}
Generated type representing the anonymous struct variant `Email` of the `ValidRecipient` Rust enum
type ValidRecipientTypes ¶ added in v0.1.6
type ValidRecipientTypes string
The validated recipient of an item share
const ( // This exact email address ValidRecipientTypeVariantEmail ValidRecipientTypes = "Email" // Anyone with an email address from the specified domain ValidRecipientTypeVariantDomain ValidRecipientTypes = "Domain" )
type VaultOverview ¶
type VaultOverview struct { // The vault's ID ID string `json:"id"` // The vault's title Title string `json:"title"` }
Represents a decrypted 1Password vault.
type VaultsAPI ¶
type VaultsAPI interface { // List all vaults List(ctx context.Context) ([]VaultOverview, error) }
The Vaults API holds all the operations the SDK client can perform on 1Password vaults.
func NewVaultsSource ¶
func NewVaultsSource(inner internal.InnerClient) VaultsAPI
type VaultsSource ¶
type VaultsSource struct {
internal.InnerClient
}
func (VaultsSource) List ¶ added in v0.3.0
func (v VaultsSource) List(ctx context.Context) ([]VaultOverview, error)
List all vaults
type Website ¶ added in v0.1.3
type Website struct { // The website URL URL string `json:"url"` // The label of the website, e.g. 'website', 'sign-in address' Label string `json:"label"` // The auto-fill behavior of the website // // For more information, visit https://support.1password.com/autofill-behavior/ AutofillBehavior AutofillBehavior `json:"autofillBehavior"` }
type WordListType ¶ added in v0.1.5
type WordListType string
const ( // Agile wordlist WordListTypeFullWords WordListType = "fullWords" // English-like syllables WordListTypeSyllables WordListType = "syllables" // Three (random) letter "words" WordListTypeThreeLetters WordListType = "threeLetters" )