Documentation
¶
Overview ¶
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* DevCycle Bucketing API * * Documents the DevCycle Bucketing API which provides and API interface to User Bucketing and for generated SDKs. * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
Index ¶
- Constants
- func ChunkSlice(slice []DVCEvent, chunkSize int) [][]DVCEvent
- type BaseVariable
- type BatchEventsBody
- type BucketedUserConfig
- type DVCEvent
- type DVCPopulatedUser
- type DVCUser
- type EdgeDBSettings
- type Environment
- type ErrorResponse
- type EventQueueOptions
- type Feature
- type FeatureVariation
- type FlushPayload
- type OptInColors
- type OptInSettings
- type PlatformData
- type Project
- type ProjectSettings
- type ReadOnlyVariable
- type UserDataAndEventsBody
- type UserEventsBatchRecord
- type UserFeatureData
- type Variable
Constants ¶
const ( EventType_VariableEvaluated = "variableEvaluated" EventType_AggVariableEvaluated = "aggVariableEvaluated" EventType_VariableDefaulted = "variableDefaulted" EventType_AggVariableDefaulted = "aggVariableDefaulted" EventType_CustomEvent = "customEvent" )
Variables ¶
This section is empty.
Functions ¶
func ChunkSlice ¶ added in v2.9.6
Types ¶
type BaseVariable ¶
type BatchEventsBody ¶
type BatchEventsBody struct {
Batch []UserEventsBatchRecord `json:"batch"`
}
type BucketedUserConfig ¶
type BucketedUserConfig struct { Project Project `json:"project"` Environment Environment `json:"environment"` Features map[string]Feature `json:"features"` FeatureVariationMap map[string]string `json:"featureVariationMap"` VariableVariationMap map[string]FeatureVariation `json:"variableVariationMap"` Variables map[string]ReadOnlyVariable `json:"variables"` KnownVariableKeys []float64 `json:"knownVariableKeys"` User *DVCUser `json:"-"` }
type DVCEvent ¶
type DVCEvent struct { Type_ string `json:"type"` Target string `json:"target,omitempty"` CustomType string `json:"customType,omitempty"` UserId string `json:"user_id"` ClientDate time.Time `json:"clientDate"` Value float64 `json:"value,omitempty"` FeatureVars map[string]string `json:"featureVars"` MetaData map[string]interface{} `json:"metaData,omitempty"` }
type DVCPopulatedUser ¶
type DVCPopulatedUser struct { DVCUser *PlatformData // Date the user was created, Unix epoch timestamp format CreatedDate time.Time `json:"createdDate,omitempty"` }
func (*DVCPopulatedUser) CombinedCustomData ¶
func (p *DVCPopulatedUser) CombinedCustomData() map[string]interface{}
func (*DVCPopulatedUser) MergeClientCustomData ¶ added in v2.9.6
func (p *DVCPopulatedUser) MergeClientCustomData(ccd map[string]interface{})
type DVCUser ¶
type DVCUser struct { // Unique id to identify the user UserId string `json:"user_id"` // User's email used to identify the user on the dashboard / target audiences Email string `json:"email,omitempty"` // User's name used to identify the user on the dashboard / target audiences Name string `json:"name,omitempty"` // User's language in ISO 639-1 format Language string `json:"language,omitempty"` // User's country in ISO 3166 alpha-2 format Country string `json:"country,omitempty"` // App Version of the running application AppVersion string `json:"appVersion,omitempty"` // App Build number of the running application AppBuild string `json:"appBuild,omitempty"` // User's custom data to target the user with, data will be logged to DevCycle for use in dashboard. CustomData map[string]interface{} `json:"customData,omitempty"` // User's custom data to target the user with, data will not be logged to DevCycle only used for feature bucketing. PrivateCustomData map[string]interface{} `json:"privateCustomData,omitempty"` // User's device model DeviceModel string `json:"deviceModel,omitempty"` // Date the user was created, Unix epoch timestamp format LastSeenDate time.Time `json:"lastSeenDate,omitempty"` }
func (DVCUser) GetPopulatedUser ¶
func (user DVCUser) GetPopulatedUser(platformData *PlatformData) DVCPopulatedUser
func (DVCUser) GetPopulatedUserWithTime ¶
func (user DVCUser) GetPopulatedUserWithTime(platformData *PlatformData, createDate time.Time) DVCPopulatedUser
GetPopulatedUserWithTime returns a populated user with a specific created date
type EdgeDBSettings ¶
type EdgeDBSettings struct {
Enabled bool `json:"enabled"`
}
type Environment ¶
type ErrorResponse ¶
type ErrorResponse struct { // Error message Message string `json:"message"` // Additional error information detailing the error reasoning Data interface{} `json:"data,omitempty"` }
type EventQueueOptions ¶ added in v2.9.6
type EventQueueOptions struct { FlushEventsInterval time.Duration `json:"flushEventsMS"` DisableAutomaticEventLogging bool `json:"disableAutomaticEventLogging"` DisableCustomEventLogging bool `json:"disableCustomEventLogging"` MaxEventQueueSize int `json:"maxEventsPerFlush,omitempty"` FlushEventQueueSize int `json:"minEventsPerFlush,omitempty"` EventRequestChunkSize int `json:"eventRequestChunkSize,omitempty"` EventsAPIBasePath string `json:"eventsAPIBasePath,omitempty"` }
func (*EventQueueOptions) CheckBounds ¶ added in v2.9.6
func (o *EventQueueOptions) CheckBounds()
func (*EventQueueOptions) IsEventLoggingDisabled ¶ added in v2.9.6
func (o *EventQueueOptions) IsEventLoggingDisabled(event *DVCEvent) bool
type Feature ¶
type Feature struct { // unique database id Id string `json:"_id"` // Unique key by Project, can be used in the SDK / API to reference by 'key' rather than _id. Key string `json:"key"` // Feature type Type_ string `json:"type"` // Bucketed feature variation Variation string `json:"_variation"` // Bucketed feature variation key VariationKey string `json:"variationKey"` // Bucketed feature variation name VariationName string `json:"variationName"` // Evaluation reasoning EvalReason string `json:"evalReason,omitempty"` }
type FeatureVariation ¶
type FlushPayload ¶
type FlushPayload struct { PayloadId string `json:"payloadId"` EventCount int `json:"eventCount"` Records []UserEventsBatchRecord `json:"records"` Status string }
func (*FlushPayload) AddBatchRecordForUser ¶ added in v2.9.6
func (fp *FlushPayload) AddBatchRecordForUser(record UserEventsBatchRecord, chunkSize int)
type OptInColors ¶
type OptInSettings ¶
type OptInSettings struct { Enabled bool `json:"enabled"` Title string `json:"title"` Description string `json:"description"` ImageURL string `json:"imageURL"` Colors OptInColors `json:"colors"` }
type PlatformData ¶
type PlatformData struct { SdkType string `json:"sdkType"` SdkVersion string `json:"sdkVersion"` PlatformVersion string `json:"platformVersion"` DeviceModel string `json:"deviceModel"` Platform string `json:"platform"` Hostname string `json:"hostname"` }
func (PlatformData) Default ¶ added in v2.9.6
func (p PlatformData) Default() *PlatformData
type Project ¶
type Project struct { Id string `json:"_id" validate:"required"` Key string `json:"key" validate:"required"` A0OrganizationId string `json:"a0_organization" validate:"required"` Settings ProjectSettings `json:"settings" validate:"required"` }
type ProjectSettings ¶
type ProjectSettings struct { EdgeDB EdgeDBSettings `json:"edgeDB"` OptIn OptInSettings `json:"optIn"` }
type ReadOnlyVariable ¶
type ReadOnlyVariable struct { BaseVariable // unique database id Id string `json:"_id"` }
type UserDataAndEventsBody ¶
type UserDataAndEventsBody struct { Events []DVCEvent `json:"events,omitempty"` User *DVCPopulatedUser `json:"user,omitempty"` }
type UserEventsBatchRecord ¶
type UserEventsBatchRecord struct { User DVCPopulatedUser `json:"user"` Events []DVCEvent `json:"events"` }
type UserFeatureData ¶
type Variable ¶
type Variable struct { BaseVariable // Default variable value can be a string, number, boolean, or JSON DefaultValue interface{} `json:"defaultValue"` // Identifies if variable was returned with the default value IsDefaulted bool `json:"isDefaulted"` }