Documentation
¶
Overview ¶
Package openapi provides primitives to interact with the openapi HTTP API.
Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT.
Index ¶
- Constants
- type AccountTypeEnum
- type AiAnalysis
- type AiAnalysisContentStatisticsParams
- type AiAnalysisContentsParams
- type AiAnalysisCreateFormdataRequestBody
- type AiAnalysisCreateJSONRequestBody
- type AiAnalysisCreateMultipartRequestBody
- type AiAnalysisCreateRequest
- type AiAnalysisListParams
- type AiAnalysisResult
- type AiAnalysisResultsParams
- type AiAnalysisRun
- type AnalysisScopeEnum
- type AnalyticsBrand
- type AnalyticsBrandComparisonParams
- type AnalyticsBrandComparisonParamsPlatform
- type AnalyticsFollowerTimeseriesParams
- type AnalyticsFollowerTimeseriesParamsPeriod
- type AnalyticsFollowerTimeseriesParamsPlatform
- type AnalyticsPostedCommentsParams
- type AnalyticsPostedCommentsParamsPlatform
- type BlankEnum
- type Brand
- type BrandAccount
- type BrandAccountGroups
- type BrandAccountsAddFormdataRequestBody
- type BrandAccountsAddJSONRequestBody
- type BrandAccountsAddMultipartRequestBody
- type BrandAccountsListParams
- type BrandAccountsListParamsAccountType
- type BrandAccountsRemoveFormdataRequestBody
- type BrandAccountsRemoveJSONRequestBody
- type BrandAccountsRemoveMultipartRequestBody
- type BrandAccountsWriteRequest
- type BrandCatalog
- type BrandCatalogItem
- type BrandComparison
- type BrandCreateSubBrandRequest
- type BrandFollowers
- type BrandKeywords
- type BrandStatistics
- type BrandsCatalogParams
- type BrandsCatalogParamsOrderBy
- type BrandsListParams
- type BrandsUpdateFormdataRequestBody
- type BrandsUpdateJSONRequestBody
- type BrandsUpdateMultipartRequestBody
- type Comment
- type CommentAuthor
- type CommentsListParams
- type CommentsListParamsOrderBy
- type Content
- type ContentActionRequestRequest
- type ContentActionResponse
- type ContentAiSummarizeFormdataRequestBody
- type ContentAiSummarizeJSONRequestBody
- type ContentAiSummarizeMultipartRequestBody
- type ContentCreator
- type ContentDetailsParams
- type ContentDiscoverFormdataRequestBody
- type ContentDiscoverJSONRequestBody
- type ContentDiscoverMultipartRequestBody
- type ContentDiscovery
- type ContentDiscoveryRequestRequest
- type ContentFilterInputRequest
- type ContentFormEnum
- type ContentListParams
- type ContentListParamsContentForm
- type ContentListParamsMentionType
- type ContentListParamsMentionTypeNot
- type ContentListParamsOrderBy
- type ContentListParamsPlatform
- type ContentScopeRequest
- type ContentStatistics
- type ContentStatisticsParams
- type ContentStatisticsParamsContentForm
- type ContentStatisticsParamsMentionType
- type ContentStatisticsParamsMentionTypeNot
- type ContentStatisticsParamsOrderBy
- type ContentStatisticsParamsPlatform
- type ContentTranscribeFormdataRequestBody
- type ContentTranscribeJSONRequestBody
- type ContentTranscribeMultipartRequestBody
- type Creator
- type CreatorSync
- type CreatorSyncCreateFormdataRequestBody
- type CreatorSyncCreateJSONRequestBody
- type CreatorSyncCreateMultipartRequestBody
- type CreatorSyncCreateRequest
- type CreatorSyncListParams
- type CreatorVetting
- type CreatorVettingContentStatisticsParams
- type CreatorVettingContentsParams
- type CreatorVettingCreateFormdataRequestBody
- type CreatorVettingCreateJSONRequestBody
- type CreatorVettingCreateMultipartRequestBody
- type CreatorVettingListParams
- type CreatorVettingRequest
- type CreatorVettingResult
- type CreatorVettingResultsParams
- type CreatorVettingRun
- type CreatorsListParams
- type CreatorsListParamsOrderBy
- type CreatorsListParamsPlatform
- type Detection
- type DetectionBrandHint
- type DetectionBrandHintRequest
- type DetectionBrandResult
- type DetectionBrandSummary
- type DetectionContext
- type DetectionContextInputRequest
- type DetectionCreateFormdataRequestBody
- type DetectionCreateJSONRequestBody
- type DetectionCreateMultipartRequestBody
- type DetectionCreateRequest
- type DetectionHints
- type DetectionHintsRequest
- type DetectionListParams
- type DetectionPlacement
- type DetectionResult
- type DetectionSummary
- type DetectionVideo
- type Error400
- type Error400ErrorCode
- type Error401
- type Error401ErrorCode
- type Error403
- type Error403ErrorCode
- type Error404
- type Error404ErrorCode
- type Error406
- type Error406ErrorCode
- type Error429
- type Error429ErrorCode
- type Error500
- type Error500ErrorCode
- type Error503
- type Error503ErrorCode
- type FollowerAccount
- type FollowerPeriod
- type FollowerTimeseries
- type IntervalHoursEnum
- type KindEnum
- type LastStatusEnum
- type MentionTypeEnum
- type NullEnum
- type PaginatedAiAnalysisList
- type PaginatedAiAnalysisResultList
- type PaginatedBrandCatalogList
- type PaginatedBrandList
- type PaginatedCommentList
- type PaginatedContentList
- type PaginatedCreatorList
- type PaginatedCreatorSyncList
- type PaginatedCreatorVettingList
- type PaginatedCreatorVettingResultList
- type PaginatedDetectionList
- type PaginatedWebhookDeliveryList
- type PaginatedWebhookSecretList
- type PaginatedWebhookSubscriptionList
- type PatchedBrandUpdateRequest
- type PatchedWebhookSubscriptionUpdateRequest
- type PatchedWebhookSubscriptionUpdateRequest_IntervalHours
- func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsIntervalHoursEnum() (IntervalHoursEnum, error)
- func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsNullEnum() (NullEnum, error)
- func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromIntervalHoursEnum(v IntervalHoursEnum) error
- func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromNullEnum(v NullEnum) error
- func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MarshalJSON() ([]byte, error)
- func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeIntervalHoursEnum(v IntervalHoursEnum) error
- func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeNullEnum(v NullEnum) error
- func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) UnmarshalJSON(b []byte) error
- type PlatformEnum
- type PostedCommentCategory
- type PostedComments
- type ResourceEnum
- type ResultFile
- type SafetyCheckRequest
- type SecretTypeEnum
- type StateEnum
- type SubBrandTypeEnum
- type SubBrandsCreateFormdataRequestBody
- type SubBrandsCreateJSONRequestBody
- type SubBrandsCreateMultipartRequestBody
- type TypeEnum
- type Usage
- type UsageDay
- type UsageHistory
- type UsageScope
- type UsageWindow
- type WebhookAvailableEvent
- type WebhookData
- type WebhookDeleteAcknowledgement
- type WebhookDelivery
- type WebhookFile
- type WebhookPush
- type WebhookPushDeliveryMode
- type WebhookSecret
- type WebhookSecretCreateRequest
- type WebhookSecretCreated
- type WebhookSubscription
- type WebhookSubscriptionCreateRequest
- type WebhookSubscriptionCreateRequest_IntervalHours
- func (t WebhookSubscriptionCreateRequest_IntervalHours) AsIntervalHoursEnum() (IntervalHoursEnum, error)
- func (t WebhookSubscriptionCreateRequest_IntervalHours) AsNullEnum() (NullEnum, error)
- func (t *WebhookSubscriptionCreateRequest_IntervalHours) FromIntervalHoursEnum(v IntervalHoursEnum) error
- func (t *WebhookSubscriptionCreateRequest_IntervalHours) FromNullEnum(v NullEnum) error
- func (t WebhookSubscriptionCreateRequest_IntervalHours) MarshalJSON() ([]byte, error)
- func (t *WebhookSubscriptionCreateRequest_IntervalHours) MergeIntervalHoursEnum(v IntervalHoursEnum) error
- func (t *WebhookSubscriptionCreateRequest_IntervalHours) MergeNullEnum(v NullEnum) error
- func (t *WebhookSubscriptionCreateRequest_IntervalHours) UnmarshalJSON(b []byte) error
- type WebhookSubscriptionCreateRequest_Resource
- func (t WebhookSubscriptionCreateRequest_Resource) AsNullEnum() (NullEnum, error)
- func (t WebhookSubscriptionCreateRequest_Resource) AsResourceEnum() (ResourceEnum, error)
- func (t *WebhookSubscriptionCreateRequest_Resource) FromNullEnum(v NullEnum) error
- func (t *WebhookSubscriptionCreateRequest_Resource) FromResourceEnum(v ResourceEnum) error
- func (t WebhookSubscriptionCreateRequest_Resource) MarshalJSON() ([]byte, error)
- func (t *WebhookSubscriptionCreateRequest_Resource) MergeNullEnum(v NullEnum) error
- func (t *WebhookSubscriptionCreateRequest_Resource) MergeResourceEnum(v ResourceEnum) error
- func (t *WebhookSubscriptionCreateRequest_Resource) UnmarshalJSON(b []byte) error
- type WebhookSubscriptionCreated
- type WebhookSubscriptionCreated_Resource
- func (t WebhookSubscriptionCreated_Resource) AsNullEnum() (NullEnum, error)
- func (t WebhookSubscriptionCreated_Resource) AsResourceEnum() (ResourceEnum, error)
- func (t *WebhookSubscriptionCreated_Resource) FromNullEnum(v NullEnum) error
- func (t *WebhookSubscriptionCreated_Resource) FromResourceEnum(v ResourceEnum) error
- func (t WebhookSubscriptionCreated_Resource) MarshalJSON() ([]byte, error)
- func (t *WebhookSubscriptionCreated_Resource) MergeNullEnum(v NullEnum) error
- func (t *WebhookSubscriptionCreated_Resource) MergeResourceEnum(v ResourceEnum) error
- func (t *WebhookSubscriptionCreated_Resource) UnmarshalJSON(b []byte) error
- type WebhookSubscription_LastStatus
- func (t WebhookSubscription_LastStatus) AsBlankEnum() (BlankEnum, error)
- func (t WebhookSubscription_LastStatus) AsLastStatusEnum() (LastStatusEnum, error)
- func (t *WebhookSubscription_LastStatus) FromBlankEnum(v BlankEnum) error
- func (t *WebhookSubscription_LastStatus) FromLastStatusEnum(v LastStatusEnum) error
- func (t WebhookSubscription_LastStatus) MarshalJSON() ([]byte, error)
- func (t *WebhookSubscription_LastStatus) MergeBlankEnum(v BlankEnum) error
- func (t *WebhookSubscription_LastStatus) MergeLastStatusEnum(v LastStatusEnum) error
- func (t *WebhookSubscription_LastStatus) UnmarshalJSON(b []byte) error
- type WebhookSubscription_Resource
- func (t WebhookSubscription_Resource) AsNullEnum() (NullEnum, error)
- func (t WebhookSubscription_Resource) AsResourceEnum() (ResourceEnum, error)
- func (t *WebhookSubscription_Resource) FromNullEnum(v NullEnum) error
- func (t *WebhookSubscription_Resource) FromResourceEnum(v ResourceEnum) error
- func (t WebhookSubscription_Resource) MarshalJSON() ([]byte, error)
- func (t *WebhookSubscription_Resource) MergeNullEnum(v NullEnum) error
- func (t *WebhookSubscription_Resource) MergeResourceEnum(v ResourceEnum) error
- func (t *WebhookSubscription_Resource) UnmarshalJSON(b []byte) error
- type WebhooksCreateSecretFormdataRequestBody
- type WebhooksCreateSecretJSONRequestBody
- type WebhooksCreateSecretMultipartRequestBody
- type WebhooksCreateSubscriptionFormdataRequestBody
- type WebhooksCreateSubscriptionJSONRequestBody
- type WebhooksCreateSubscriptionMultipartRequestBody
- type WebhooksListDeliveriesParams
- type WebhooksListDeliveriesParamsSortBy
- type WebhooksListDeliveriesParamsState
- type WebhooksListDeliveriesParamsStateNot
- type WebhooksListSecretsParams
- type WebhooksListSubscriptionsParams
- type WebhooksUpdateSubscriptionFormdataRequestBody
- type WebhooksUpdateSubscriptionJSONRequestBody
- type WebhooksUpdateSubscriptionMultipartRequestBody
Constants ¶
const (
ApiKeyScopes = "ApiKey.Scopes"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountTypeEnum ¶
type AccountTypeEnum string
AccountTypeEnum defines model for AccountTypeEnum.
const ( AccountTypeEnumInfluencer AccountTypeEnum = "influencer" AccountTypeEnumOwned AccountTypeEnum = "owned" AccountTypeEnumTracked AccountTypeEnum = "tracked" )
Defines values for AccountTypeEnum.
type AiAnalysis ¶
type AiAnalysis struct {
// Analyses The runs that make up this analysis, one per scope, ordered newest first.
Analyses []AiAnalysisRun `json:"analyses"`
// AnalysisType Always `AI_ANALYSIS` here.
AnalysisType string `json:"analysis_type"`
// CreatedAt When the analysis was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// Id ID of the analysis. Use this value on follow-up calls.
Id string `json:"id"`
// ModifiedAt When the analysis was last modified (UTC, ISO-8601).
ModifiedAt time.Time `json:"modified_at"`
// Name The analysis label.
Name string `json:"name"`
// Topic The subject the analysis focuses on.
Topic nullable.Nullable[string] `json:"topic"`
}
AiAnalysis Response body for the AI analysis root.
type AiAnalysisContentStatisticsParams ¶
type AiAnalysisContentStatisticsParams struct {
// AnalysisId Analysis id, as returned by `ai_analysis.list`.
AnalysisId string `form:"analysis_id" json:"analysis_id"`
}
AiAnalysisContentStatisticsParams defines parameters for AiAnalysisContentStatistics.
type AiAnalysisContentsParams ¶
type AiAnalysisContentsParams struct {
// AnalysisId Analysis id, as returned by `ai_analysis.list`.
AnalysisId string `form:"analysis_id" json:"analysis_id"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
AiAnalysisContentsParams defines parameters for AiAnalysisContents.
type AiAnalysisCreateFormdataRequestBody ¶
type AiAnalysisCreateFormdataRequestBody = AiAnalysisCreateRequest
AiAnalysisCreateFormdataRequestBody defines body for AiAnalysisCreate for application/x-www-form-urlencoded ContentType.
type AiAnalysisCreateJSONRequestBody ¶
type AiAnalysisCreateJSONRequestBody = AiAnalysisCreateRequest
AiAnalysisCreateJSONRequestBody defines body for AiAnalysisCreate for application/json ContentType.
type AiAnalysisCreateMultipartRequestBody ¶
type AiAnalysisCreateMultipartRequestBody = AiAnalysisCreateRequest
AiAnalysisCreateMultipartRequestBody defines body for AiAnalysisCreate for multipart/form-data ContentType.
type AiAnalysisCreateRequest ¶
type AiAnalysisCreateRequest struct {
// AnalysisScope What to analyze: any of `CONTENT`, `COMMENT`. Defaults to `["CONTENT"]`.
AnalysisScope *[]AnalysisScopeEnum `json:"analysis_scope,omitempty"`
// ContentFilters Selects which content the analysis runs over. At least one of `search`, `creator_id`, `creator_username`, `external_id`, or `brand_id` is required to scope it. When both `posted_after` and `posted_before` are omitted, the analysis defaults to content from the last 7 days.
ContentFilters ContentFilterInputRequest `json:"content_filters"`
// Name A label for this analysis.
Name string `json:"name"`
// Topic The brand, product, person or event to analyze, as a short term. For example `Levi's` or `Running shoes`. Keep it under five words. Do not write a question: every run reports sentiment, price, quality, competitors and products for the topic. To narrow the posts, use `content_filters`.
Topic string `json:"topic"`
}
AiAnalysisCreateRequest Request body for “POST /api/v1/ai_analysis/“.
type AiAnalysisListParams ¶
type AiAnalysisListParams struct {
// Id Optional analysis id. When supplied, only that analysis is returned. Returns `INVALID_ID` if malformed.
Id *string `form:"id,omitempty" json:"id,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
AiAnalysisListParams defines parameters for AiAnalysisList.
type AiAnalysisResult ¶
type AiAnalysisResult struct {
// AnalysisId ID of the analysis this run belongs to.
AnalysisId string `json:"analysis_id"`
// CreatedAt When the run was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// Id ID of the analysis run.
Id string `json:"id"`
// ModifiedAt When the run was last modified (UTC, ISO-8601).
ModifiedAt time.Time `json:"modified_at"`
// Result Signed, time-limited download of an analysis run's result payload.
Result *ResultFile `json:"result,omitempty"`
// Scope What this run covers: `CONTENT` or `COMMENT`.
Scope string `json:"scope"`
// Status Run status: one of `IN_PROGRESS`, `COMPLETED`, `EMPTY_RESULT` (finished with no matching content), or `FAILED`.
Status string `json:"status"`
}
AiAnalysisResult A single analysis run with its downloadable “result“.
type AiAnalysisResultsParams ¶
type AiAnalysisResultsParams struct {
// AnalysisId Analysis id (from `ai_analysis.list`). Returns every run of that analysis. Exactly one of `analysis_id` and `id` is required, and a request carrying both is rejected. Returns `INVALID_ID` if malformed.
AnalysisId *string `form:"analysis_id,omitempty" json:"analysis_id,omitempty"`
// Id Single run id. Returns only that run. Exactly one of `analysis_id` and `id` is required, and a request carrying both is rejected. Returns `INVALID_ID` if malformed.
Id *string `form:"id,omitempty" json:"id,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
AiAnalysisResultsParams defines parameters for AiAnalysisResults.
type AiAnalysisRun ¶
type AiAnalysisRun struct {
// Id ID of the analysis run.
Id string `json:"id"`
// Scope What this run covers: `CONTENT` or `COMMENT`.
Scope string `json:"scope"`
// Status Run status: one of `IN_PROGRESS`, `COMPLETED`, `EMPTY_RESULT` (finished with no matching content), or `FAILED`.
Status string `json:"status"`
}
AiAnalysisRun A single analysis run, without its result payload.
The run “result“ is not included; retrieve it from `ai_analysis.results` once “status“ is `COMPLETED`.
type AnalysisScopeEnum ¶
type AnalysisScopeEnum string
AnalysisScopeEnum defines model for AnalysisScopeEnum.
const ( COMMENT AnalysisScopeEnum = "COMMENT" CONTENT AnalysisScopeEnum = "CONTENT" )
Defines values for AnalysisScopeEnum.
type AnalyticsBrand ¶ added in v1.1.0
type AnalyticsBrand struct {
// Id Unique identifier for the brand.
Id string `json:"id"`
// IsPrimary `true` for the brand the request named, `false` for a sub-brand.
IsPrimary bool `json:"is_primary"`
// SubBrandType `COMPETITIVE` or `THEME` for a sub-brand; `null` for the top-level brand the request named.
SubBrandType nullable.Nullable[string] `json:"sub_brand_type"`
// Title Display name of the brand.
Title nullable.Nullable[string] `json:"title"`
}
AnalyticsBrand The brand a row of analytics belongs to.
type AnalyticsBrandComparisonParams ¶ added in v1.1.0
type AnalyticsBrandComparisonParams struct {
// BrandId The top-level brand to analyse, as returned by `brands.list`. A sub-brand is refused with the id of the parent to use instead.
BrandId string `form:"brand_id" json:"brand_id"`
// Platform Platforms to include, comma-separated. Defaults to all of them.
Platform *[]AnalyticsBrandComparisonParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// PostedAfter Start of the window (UTC, ISO 8601). Supplying more than one start is accepted and only one applies: this one wins over `posted_within_hours`, which wins over `posted_within_days`.
PostedAfter *time.Time `form:"posted_after,omitempty" json:"posted_after,omitempty"`
// PostedBefore End of the window (UTC, ISO 8601). Defaults to the current time, and a relative start is counted back from it.
PostedBefore *time.Time `form:"posted_before,omitempty" json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from `posted_before` or the current time, in days (1-365). Defaults to 7 when no date parameter is supplied, and loses to `posted_after` and `posted_within_hours`.
PostedWithinDays *int `form:"posted_within_days,omitempty" json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from `posted_before` or the current time, in hours (1-8760). `posted_after` wins over it; it wins over `posted_within_days`.
PostedWithinHours *int `form:"posted_within_hours,omitempty" json:"posted_within_hours,omitempty"`
}
AnalyticsBrandComparisonParams defines parameters for AnalyticsBrandComparison.
type AnalyticsBrandComparisonParamsPlatform ¶ added in v1.1.0
type AnalyticsBrandComparisonParamsPlatform string
AnalyticsBrandComparisonParamsPlatform defines parameters for AnalyticsBrandComparison.
const ( AnalyticsBrandComparisonParamsPlatformInstagram AnalyticsBrandComparisonParamsPlatform = "instagram" AnalyticsBrandComparisonParamsPlatformTiktok AnalyticsBrandComparisonParamsPlatform = "tiktok" AnalyticsBrandComparisonParamsPlatformYoutube AnalyticsBrandComparisonParamsPlatform = "youtube" )
Defines values for AnalyticsBrandComparisonParamsPlatform.
type AnalyticsFollowerTimeseriesParams ¶ added in v1.1.0
type AnalyticsFollowerTimeseriesParams struct {
// BrandId The top-level brand to analyse, as returned by `brands.list`. A sub-brand is refused with the id of the parent to use instead.
BrandId string `form:"brand_id" json:"brand_id"`
// Period Size of each bucket in the series. Defaults to `day`.
Period *AnalyticsFollowerTimeseriesParamsPeriod `form:"period,omitempty" json:"period,omitempty"`
// Platform Platforms to include, comma-separated. Defaults to all of them.
Platform *[]AnalyticsFollowerTimeseriesParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// PostedAfter Start of the window (UTC, ISO 8601). Supplying more than one start is accepted and only one applies: this one wins over `posted_within_hours`, which wins over `posted_within_days`.
PostedAfter *time.Time `form:"posted_after,omitempty" json:"posted_after,omitempty"`
// PostedBefore End of the window (UTC, ISO 8601). Defaults to the current time, and a relative start is counted back from it.
PostedBefore *time.Time `form:"posted_before,omitempty" json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from `posted_before` or the current time, in days (1-365). Defaults to 7 when no date parameter is supplied, and loses to `posted_after` and `posted_within_hours`.
PostedWithinDays *int `form:"posted_within_days,omitempty" json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from `posted_before` or the current time, in hours (1-8760). `posted_after` wins over it; it wins over `posted_within_days`.
PostedWithinHours *int `form:"posted_within_hours,omitempty" json:"posted_within_hours,omitempty"`
}
AnalyticsFollowerTimeseriesParams defines parameters for AnalyticsFollowerTimeseries.
type AnalyticsFollowerTimeseriesParamsPeriod ¶ added in v1.1.0
type AnalyticsFollowerTimeseriesParamsPeriod string
AnalyticsFollowerTimeseriesParamsPeriod defines parameters for AnalyticsFollowerTimeseries.
const ( Day AnalyticsFollowerTimeseriesParamsPeriod = "day" Month AnalyticsFollowerTimeseriesParamsPeriod = "month" Week AnalyticsFollowerTimeseriesParamsPeriod = "week" Year AnalyticsFollowerTimeseriesParamsPeriod = "year" )
Defines values for AnalyticsFollowerTimeseriesParamsPeriod.
type AnalyticsFollowerTimeseriesParamsPlatform ¶ added in v1.1.0
type AnalyticsFollowerTimeseriesParamsPlatform string
AnalyticsFollowerTimeseriesParamsPlatform defines parameters for AnalyticsFollowerTimeseries.
const ( AnalyticsFollowerTimeseriesParamsPlatformInstagram AnalyticsFollowerTimeseriesParamsPlatform = "instagram" AnalyticsFollowerTimeseriesParamsPlatformTiktok AnalyticsFollowerTimeseriesParamsPlatform = "tiktok" AnalyticsFollowerTimeseriesParamsPlatformYoutube AnalyticsFollowerTimeseriesParamsPlatform = "youtube" )
Defines values for AnalyticsFollowerTimeseriesParamsPlatform.
type AnalyticsPostedCommentsParams ¶ added in v1.1.0
type AnalyticsPostedCommentsParams struct {
// BrandId The top-level brand to analyse, as returned by `brands.list`. A sub-brand is refused with the id of the parent to use instead.
BrandId string `form:"brand_id" json:"brand_id"`
// Platform Platforms to include, comma-separated. Defaults to all of them.
Platform *[]AnalyticsPostedCommentsParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// PostedAfter Start of the window (UTC, ISO 8601). Supplying more than one start is accepted and only one applies: this one wins over `posted_within_hours`, which wins over `posted_within_days`.
PostedAfter *time.Time `form:"posted_after,omitempty" json:"posted_after,omitempty"`
// PostedBefore End of the window (UTC, ISO 8601). Defaults to the current time, and a relative start is counted back from it.
PostedBefore *time.Time `form:"posted_before,omitempty" json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from `posted_before` or the current time, in days (1-365). Defaults to 7 when no date parameter is supplied, and loses to `posted_after` and `posted_within_hours`.
PostedWithinDays *int `form:"posted_within_days,omitempty" json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from `posted_before` or the current time, in hours (1-8760). `posted_after` wins over it; it wins over `posted_within_days`.
PostedWithinHours *int `form:"posted_within_hours,omitempty" json:"posted_within_hours,omitempty"`
}
AnalyticsPostedCommentsParams defines parameters for AnalyticsPostedComments.
type AnalyticsPostedCommentsParamsPlatform ¶ added in v1.1.0
type AnalyticsPostedCommentsParamsPlatform string
AnalyticsPostedCommentsParamsPlatform defines parameters for AnalyticsPostedComments.
const ( AnalyticsPostedCommentsParamsPlatformInstagram AnalyticsPostedCommentsParamsPlatform = "instagram" AnalyticsPostedCommentsParamsPlatformTiktok AnalyticsPostedCommentsParamsPlatform = "tiktok" AnalyticsPostedCommentsParamsPlatformYoutube AnalyticsPostedCommentsParamsPlatform = "youtube" )
Defines values for AnalyticsPostedCommentsParamsPlatform.
type Brand ¶
type Brand struct {
// Id Unique identifier for the brand. Supply it wherever a `brand_id` accepts a brand id.
Id string `json:"id"`
// IsPrimary `true` for the brand this access belongs to, and `false` for every other brand the request can access.
IsPrimary bool `json:"is_primary"`
// Keywords The terms this brand uses to monitor social platforms. All arrays are always present, though they may be empty, and are never null.
Keywords BrandKeywords `json:"keywords"`
// ParentBrandId Id of the parent brand for a sub-brand; `null` for a top-level brand.
ParentBrandId nullable.Nullable[string] `json:"parent_brand_id"`
// SubBrandType `COMPETITIVE` or `THEME` for a sub-brand; `null` for a top-level brand.
SubBrandType nullable.Nullable[string] `json:"sub_brand_type"`
// Title Display name of the brand.
Title string `json:"title"`
}
Brand A brand you can reach.
type BrandAccount ¶
type BrandAccount struct {
// ExternalUrl The account's profile URL, when available.
ExternalUrl nullable.Nullable[string] `json:"external_url,omitempty"`
// Platform `instagram`, `tiktok` or `youtube`.
Platform string `json:"platform"`
// Username The account's handle.
Username string `json:"username"`
}
BrandAccount An account tracked, marked as an influencer, or owned by the brand.
type BrandAccountGroups ¶
type BrandAccountGroups struct {
// Influencer Accounts the brand treats as partnership candidates.
Influencer *[]BrandAccount `json:"influencer,omitempty"`
// Owned Profiles the brand operates itself.
Owned *[]BrandAccount `json:"owned,omitempty"`
// Tracked Accounts the brand monitors.
Tracked *[]BrandAccount `json:"tracked,omitempty"`
}
BrandAccountGroups A brand's accounts, grouped into one list per account type.
Every key is optional because `account_type` narrows the response to the single list it names.
type BrandAccountsAddFormdataRequestBody ¶
type BrandAccountsAddFormdataRequestBody = BrandAccountsWriteRequest
BrandAccountsAddFormdataRequestBody defines body for BrandAccountsAdd for application/x-www-form-urlencoded ContentType.
type BrandAccountsAddJSONRequestBody ¶
type BrandAccountsAddJSONRequestBody = BrandAccountsWriteRequest
BrandAccountsAddJSONRequestBody defines body for BrandAccountsAdd for application/json ContentType.
type BrandAccountsAddMultipartRequestBody ¶
type BrandAccountsAddMultipartRequestBody = BrandAccountsWriteRequest
BrandAccountsAddMultipartRequestBody defines body for BrandAccountsAdd for multipart/form-data ContentType.
type BrandAccountsListParams ¶
type BrandAccountsListParams struct {
// AccountType Restricts the response to a single list (`tracked`, `influencer` or `owned`).
AccountType *BrandAccountsListParamsAccountType `form:"account_type,omitempty" json:"account_type,omitempty"`
// BrandId Identifies the brand to operate on. Defaults to the brand the key acts on when `brand_id` is omitted. Every `id` returned by `brands.list` is accepted. That set includes linked top-level brands and their sub-brands, not only sub-brands. Returns `INVALID_ID` if the value is malformed, and `403` for a brand outside the key's reach.
BrandId *string `form:"brand_id,omitempty" json:"brand_id,omitempty"`
}
BrandAccountsListParams defines parameters for BrandAccountsList.
type BrandAccountsListParamsAccountType ¶
type BrandAccountsListParamsAccountType string
BrandAccountsListParamsAccountType defines parameters for BrandAccountsList.
const ( BrandAccountsListParamsAccountTypeInfluencer BrandAccountsListParamsAccountType = "influencer" BrandAccountsListParamsAccountTypeOwned BrandAccountsListParamsAccountType = "owned" BrandAccountsListParamsAccountTypeTracked BrandAccountsListParamsAccountType = "tracked" )
Defines values for BrandAccountsListParamsAccountType.
type BrandAccountsRemoveFormdataRequestBody ¶
type BrandAccountsRemoveFormdataRequestBody = BrandAccountsWriteRequest
BrandAccountsRemoveFormdataRequestBody defines body for BrandAccountsRemove for application/x-www-form-urlencoded ContentType.
type BrandAccountsRemoveJSONRequestBody ¶
type BrandAccountsRemoveJSONRequestBody = BrandAccountsWriteRequest
BrandAccountsRemoveJSONRequestBody defines body for BrandAccountsRemove for application/json ContentType.
type BrandAccountsRemoveMultipartRequestBody ¶
type BrandAccountsRemoveMultipartRequestBody = BrandAccountsWriteRequest
BrandAccountsRemoveMultipartRequestBody defines body for BrandAccountsRemove for multipart/form-data ContentType.
type BrandAccountsWriteRequest ¶
type BrandAccountsWriteRequest struct {
// AccountType The list to modify: `tracked`, `influencer`, or `owned` for the brand's own profiles.
AccountType AccountTypeEnum `json:"account_type"`
// BrandId Brand to modify, specified as an `id` from `brands.list`. Omit to modify the workspace brand.
BrandId *string `json:"brand_id,omitempty"`
// ProfileUrls Profile URLs on a supported platform (`instagram`, `tiktok` or `youtube`).
ProfileUrls []string `json:"profile_urls"`
}
BrandAccountsWriteRequest Add or remove profiles in a brand's tracked/influencer/owned list.
type BrandCatalog ¶
type BrandCatalog struct {
// BrandLogo URL of the brand's logo, when one is on file.
BrandLogo nullable.Nullable[string] `json:"brand_logo"`
// CategoryId Identifier of the brand's category.
CategoryId nullable.Nullable[string] `json:"category_id"`
// CategoryName Name of the brand's category.
CategoryName nullable.Nullable[string] `json:"category_name"`
// Id Unique identifier for the brand. Supply it as `brand_id` on the content and AI analysis endpoints to read this brand's content.
Id string `json:"id"`
// IndustryId Identifier of the brand's industry.
IndustryId nullable.Nullable[string] `json:"industry_id"`
// IndustryName Name of the brand's industry.
IndustryName nullable.Nullable[string] `json:"industry_name"`
// Title Display name of the brand.
Title string `json:"title"`
}
BrandCatalog A brand in the curated catalog, readable by every api key.
type BrandCatalogItem ¶
type BrandCatalogItem struct {
// Id Identifier to pass as `industry_id` or `category_id` to `brands.catalog`.
Id string `json:"id"`
// Level `industry` or `category`.
Level string `json:"level"`
// Name Display name of the industry or category.
Name string `json:"name"`
// ParentId Industry id a category belongs to; `null` for an industry.
ParentId nullable.Nullable[string] `json:"parent_id"`
}
BrandCatalogItem An industry or a category, used to filter the brand catalog.
type BrandComparison ¶ added in v1.1.0
type BrandComparison struct {
// Brand The brand this row covers.
Brand AnalyticsBrand `json:"brand"`
// Followers Follower counts as they stand now, not over the window.
Followers BrandFollowers `json:"followers"`
// Statistics Totals over the window.
Statistics BrandStatistics `json:"statistics"`
}
BrandComparison One brand's performance in the comparison.
type BrandCreateSubBrandRequest ¶
type BrandCreateSubBrandRequest struct {
// AllowedLanguages ISO 639-1 codes to track, or the single value `all`. An empty array means all languages are tracked. A code outside ISO 639-1 is rejected, because a brand tracking it would match no content.
AllowedLanguages *[]string `json:"allowed_languages,omitempty"`
// BooleanQuery Full-text search across the caption, transcript, summary, and hashtags.
//
// **Syntax**
// - Multiple words are combined with AND: `nike running` matches content containing both `nike` and `running`.
// - `OR` (case-insensitive) matches either side: `nike OR adidas`.
// - `NOT` (case-insensitive) excludes a term: `running NOT marathon` matches `running` but not `marathon`.
// - Wrap a phrase in double quotes to match the words in order: `"summer collection"`.
// - Negate a phrase with `NOT`: `NOT "out of stock"`.
// - Group with parentheses to combine operators: `(nike OR adidas) running`.
// - `ONEAR/n` (case-insensitive) matches terms within `n` words of each other, in order: `apple ONEAR/2 watch` matches `apple watch` and `apple smart watch`, but not `watch ... apple`. It binds more tightly than `AND` and `OR`, so `apple ONEAR/2 watch AND cheap` is interpreted as `(apple near watch) AND cheap`.
//
// **Examples**
// - `nike running` - contains both terms.
// - `nike OR adidas` - contains either brand.
// - `"summer sale" NOT clearance` - the exact phrase, without `clearance`.
// - `(running OR cycling) NOT "beginner guide"` - either sport, excluding the phrase.
// - `apple ONEAR/2 watch` - `apple` within two words before `watch`.
//
// Content matching this query is connected to (associated with) this brand.
BooleanQuery nullable.Nullable[string] `json:"boolean_query,omitempty"`
// CompoundInclusionTerms Secondary inclusion terms layered on top of `inclusion_terms`.
CompoundInclusionTerms *[]string `json:"compound_inclusion_terms,omitempty"`
// ExclusionTerms Terms that disqualify content from matching.
ExclusionTerms *[]string `json:"exclusion_terms,omitempty"`
// InclusionTerms Terms that must be present for content to match.
InclusionTerms *[]string `json:"inclusion_terms,omitempty"`
// InfluencerTerms Terms that mark matched content as influencer content.
InfluencerTerms *[]string `json:"influencer_terms,omitempty"`
// SearchTerms Plain keywords the brand monitors across platforms, matched as-is (case-insensitive, no operators).
SearchTerms *[]string `json:"search_terms,omitempty"`
// SubBrandType Type of sub-brand: `COMPETITIVE` or `THEME`.
SubBrandType SubBrandTypeEnum `json:"sub_brand_type"`
// Title Display name of the new sub-brand.
Title string `json:"title"`
}
BrandCreateSubBrandRequest Create a sub-brand under the workspace brand.
type BrandFollowers ¶ added in v1.1.0
type BrandFollowers struct {
// Accounts Per handle counts that add up to `total`.
Accounts []FollowerAccount `json:"accounts"`
// Total Followers across every owned handle.
Total int `json:"total"`
}
BrandFollowers Followers across the handles a brand owns.
type BrandKeywords ¶
type BrandKeywords struct {
// AllowedLanguages ISO 639-1 codes for the languages the brand tracks. An empty array indicates that all languages are tracked.
AllowedLanguages []string `json:"allowed_languages"`
// BooleanQuery Full-text search across the caption, transcript, summary, and hashtags.
//
// **Syntax**
// - Multiple words are combined with AND: `nike running` matches content containing both `nike` and `running`.
// - `OR` (case-insensitive) matches either side: `nike OR adidas`.
// - `NOT` (case-insensitive) excludes a term: `running NOT marathon` matches `running` but not `marathon`.
// - Wrap a phrase in double quotes to match the words in order: `"summer collection"`.
// - Negate a phrase with `NOT`: `NOT "out of stock"`.
// - Group with parentheses to combine operators: `(nike OR adidas) running`.
// - `ONEAR/n` (case-insensitive) matches terms within `n` words of each other, in order: `apple ONEAR/2 watch` matches `apple watch` and `apple smart watch`, but not `watch ... apple`. It binds more tightly than `AND` and `OR`, so `apple ONEAR/2 watch AND cheap` is interpreted as `(apple near watch) AND cheap`.
//
// **Examples**
// - `nike running` - contains both terms.
// - `nike OR adidas` - contains either brand.
// - `"summer sale" NOT clearance` - the exact phrase, without `clearance`.
// - `(running OR cycling) NOT "beginner guide"` - either sport, excluding the phrase.
// - `apple ONEAR/2 watch` - `apple` within two words before `watch`.
//
// Content matching this query is connected to (associated with) this brand.
BooleanQuery nullable.Nullable[string] `json:"boolean_query"`
// CompoundInclusionTerms Secondary inclusion terms layered on top of `inclusion_terms`. A match requires at least one term from `inclusion_terms` and at least one from `compound_inclusion_terms`.
CompoundInclusionTerms []string `json:"compound_inclusion_terms"`
// ExclusionTerms Terms that disqualify content from matching, even when other criteria are met.
ExclusionTerms []string `json:"exclusion_terms"`
// InclusionTerms Terms that must be present for content to match.
InclusionTerms []string `json:"inclusion_terms"`
// InfluencerTerms Terms that mark matched content as influencer content (for example, `sponsored`, `ad`, or `gifted`).
InfluencerTerms []string `json:"influencer_terms"`
// SearchTerms Plain keywords the brand monitors across platforms, matched as-is (case-insensitive, no operators).
SearchTerms []string `json:"search_terms"`
}
BrandKeywords The terms this brand uses to monitor social platforms.
type BrandStatistics ¶ added in v1.1.0
type BrandStatistics struct {
// EngagementRate Total engagement divided by total views. Null when the set has no recorded views.
EngagementRate nullable.Nullable[float64] `json:"engagement_rate"`
// PostCount Number of posts matched to the brand.
PostCount int `json:"post_count"`
// TotalComments Total comments across those posts.
TotalComments int `json:"total_comments"`
// TotalEarnedMediaValueCents Estimated marketing value across those posts, in US cents.
TotalEarnedMediaValueCents int `json:"total_earned_media_value_cents"`
// TotalEngagement Likes, comments and shares across those posts.
TotalEngagement int `json:"total_engagement"`
// TotalLikes Total likes across those posts.
TotalLikes int `json:"total_likes"`
// TotalNegativeNps Engagement on negative posts.
TotalNegativeNps int `json:"total_negative_nps"`
// TotalNeutralNps Engagement on neutral posts.
TotalNeutralNps int `json:"total_neutral_nps"`
// TotalPositiveNps Engagement on positive posts.
TotalPositiveNps int `json:"total_positive_nps"`
TotalShares int `json:"total_shares"`
// TotalViews Total views across those posts.
TotalViews int `json:"total_views"`
// UniqueCreatorCount Number of distinct creators who posted.
UniqueCreatorCount int `json:"unique_creator_count"`
}
BrandStatistics Totals over the content matched to a brand in the window.
type BrandsCatalogParams ¶
type BrandsCatalogParams struct {
// CategoryId Category id from `brands.catalog_categories`. Case is ignored.
CategoryId *string `form:"category_id,omitempty" json:"category_id,omitempty"`
// IndustryId Industry id from `brands.catalog_categories`. Case is ignored.
IndustryId *string `form:"industry_id,omitempty" json:"industry_id,omitempty"`
// OrderBy **Sort direction is inverted:** `order_by=field` sorts descending and `order_by=-field` sorts ascending. Comma-separate to sort by multiple fields.
OrderBy *[]BrandsCatalogParamsOrderBy `form:"order_by,omitempty" json:"order_by,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// Search Brand title substring (case-insensitive).
Search *string `form:"search,omitempty" json:"search,omitempty"`
}
BrandsCatalogParams defines parameters for BrandsCatalog.
type BrandsCatalogParamsOrderBy ¶
type BrandsCatalogParamsOrderBy string
BrandsCatalogParamsOrderBy defines parameters for BrandsCatalog.
const ( MinusTitle BrandsCatalogParamsOrderBy = "-title" Title BrandsCatalogParamsOrderBy = "title" )
Defines values for BrandsCatalogParamsOrderBy.
type BrandsListParams ¶
type BrandsListParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
}
BrandsListParams defines parameters for BrandsList.
type BrandsUpdateFormdataRequestBody ¶
type BrandsUpdateFormdataRequestBody = PatchedBrandUpdateRequest
BrandsUpdateFormdataRequestBody defines body for BrandsUpdate for application/x-www-form-urlencoded ContentType.
type BrandsUpdateJSONRequestBody ¶
type BrandsUpdateJSONRequestBody = PatchedBrandUpdateRequest
BrandsUpdateJSONRequestBody defines body for BrandsUpdate for application/json ContentType.
type BrandsUpdateMultipartRequestBody ¶
type BrandsUpdateMultipartRequestBody = PatchedBrandUpdateRequest
BrandsUpdateMultipartRequestBody defines body for BrandsUpdate for multipart/form-data ContentType.
type Comment ¶
type Comment struct {
// Author The creator who wrote the comment. Null when the author is unknown.
Author CommentAuthor `json:"author"`
// ContentId Identifier of the content the comment was left on.
ContentId nullable.Nullable[string] `json:"content_id"`
// Id Unique identifier for the comment.
Id string `json:"id"`
// IsParentComment Whether this is a top-level comment, rather than a reply to another comment.
IsParentComment bool `json:"is_parent_comment"`
// LikeCount Number of likes the comment has received.
LikeCount nullable.Nullable[int] `json:"like_count"`
// ParentCommentId Identifier of the comment this is a reply to. Null for top-level comments.
ParentCommentId nullable.Nullable[string] `json:"parent_comment_id"`
// Platform The platform the comment was posted on: `instagram`, `tiktok` or `youtube`.
Platform nullable.Nullable[string] `json:"platform"`
// PostedAt Time the comment was posted on its platform (UTC).
PostedAt nullable.Nullable[time.Time] `json:"posted_at"`
// Text The comment's text content.
Text string `json:"text"`
}
Comment A comment left on a piece of content.
type CommentAuthor ¶
type CommentAuthor struct {
// Id Unique identifier for the author.
Id string `json:"id"`
// Name The author's display name on the platform.
Name nullable.Nullable[string] `json:"name"`
// ProfilePictureUrl URL of the author's profile picture.
ProfilePictureUrl nullable.Nullable[string] `json:"profile_picture_url"`
// Username The author's username or handle on the platform (without the leading `@`).
Username nullable.Nullable[string] `json:"username"`
}
CommentAuthor A short profile of the creator who wrote the comment.
type CommentsListParams ¶
type CommentsListParams struct {
// ContentId Id of the content to list comments for.
ContentId *string `form:"content_id,omitempty" json:"content_id,omitempty"`
// Id Id of a single comment to fetch.
Id *string `form:"id,omitempty" json:"id,omitempty"`
// IsParentComment True to only top-level comments, false to only replies.
IsParentComment *bool `form:"is_parent_comment,omitempty" json:"is_parent_comment,omitempty"`
// OrderBy Sort by `like_count`. A bare key sorts descending.
//
// **Sort direction is inverted:** `order_by=field` sorts descending and `order_by=-field` sorts ascending. Comma-separate to sort by multiple fields.
OrderBy *[]CommentsListParamsOrderBy `form:"order_by,omitempty" json:"order_by,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
// ParentCommentId Id of the parent comment to list replies for.
ParentCommentId *string `form:"parent_comment_id,omitempty" json:"parent_comment_id,omitempty"`
}
CommentsListParams defines parameters for CommentsList.
type CommentsListParamsOrderBy ¶
type CommentsListParamsOrderBy string
CommentsListParamsOrderBy defines parameters for CommentsList.
const ( CommentsListParamsOrderByLikeCount CommentsListParamsOrderBy = "like_count" CommentsListParamsOrderByMinusLikeCount CommentsListParamsOrderBy = "-like_count" )
Defines values for CommentsListParamsOrderBy.
type Content ¶
type Content struct {
// AiSummary Short AI-generated summary of the content.
AiSummary nullable.Nullable[string] `json:"ai_summary"`
// BrandId Identifier of the brand that the brand-specific signals on this row (`is_owned`, `is_tagged`, `is_influencer`, `mention_type`, `net_promoter_score`) are scoped to. Returned as `null` when the request omits `brand_id`.
BrandId nullable.Nullable[string] `json:"brand_id"`
// Caption Short caption or title of the post (the primary user-visible text).
Caption string `json:"caption"`
// CommentCount Total number of comments on the content.
CommentCount nullable.Nullable[int] `json:"comment_count"`
// ContentForm Whether the content is a video or an image.
ContentForm nullable.Nullable[string] `json:"content_form"`
// Creator The creator who published the content.
Creator ContentCreator `json:"creator"`
// Description Long-form description of the post.
Description string `json:"description"`
// EarnedMediaValueCents Estimated marketing value of the content, in US cents.
EarnedMediaValueCents nullable.Nullable[int] `json:"earned_media_value_cents"`
// EngagementRate Engagement per view (likes plus comments plus shares, divided by views). Null when the content has no recorded views.
EngagementRate nullable.Nullable[float64] `json:"engagement_rate"`
Hashtags []string `json:"hashtags"`
// Id Unique identifier for this piece of content. Use it to retrieve the content anywhere a content id is accepted.
Id string `json:"id"`
// IsInfluencer Whether the scoped brand counts the content as influencer content: it matches the brand's influencer terms, comes from an account on its influencer list, was reported as branded content by the platform, or was marked by hand. Content the brand owns is never influencer content. Returned as `null` when the request omits `brand_id`.
IsInfluencer nullable.Nullable[bool] `json:"is_influencer"`
// IsOwned Whether the scoped brand owns the content; that is, whether it was published by an account the brand controls. Returned as `null` when the request omits `brand_id`.
IsOwned nullable.Nullable[bool] `json:"is_owned"`
// IsTagged Whether the post tags the scoped brand on the platform. Returned as `null` when the request omits `brand_id`.
IsTagged nullable.Nullable[bool] `json:"is_tagged"`
// Language ISO 639 code of the content's primary language.
Language nullable.Nullable[string] `json:"language"`
// LastKeyword The search term the content was most recently found by. Null when the content was not picked up through a keyword search.
LastKeyword nullable.Nullable[string] `json:"last_keyword"`
// LikeCount Total number of likes the content has received.
LikeCount nullable.Nullable[int] `json:"like_count"`
// MediaDuration Length of the media in seconds. Null when not known.
MediaDuration nullable.Nullable[float64] `json:"media_duration"`
// MentionType How the scoped brand is mentioned in the content. One of `content` or `comment`, or null when the brand is not mentioned. Returned as `null` when the request omits `brand_id`.
MentionType nullable.Nullable[string] `json:"mention_type"`
// NetPromoterScore Net promoter score for the content from the perspective of the scoped brand. Returned as `null` when the request omits `brand_id`.
NetPromoterScore nullable.Nullable[int] `json:"net_promoter_score"`
// Platform The platform the content was published on: `instagram`, `tiktok` or `youtube`.
Platform string `json:"platform"`
// PlatformPostId The post's identifier on its platform. This is the value at the end of the post's URL.
//
// Examples:
// - Instagram: `https://instagram.com/reel/abcd` -> `abcd`
// - TikTok: `https://www.tiktok.com/@username/video/12345678` -> `12345678`
PlatformPostId string `json:"platform_post_id"`
// PlatformUrl Direct URL to the post on its platform.
//
// Examples:
// - `https://instagram.com/reel/abcd`
// - `https://www.tiktok.com/@username/video/12345678`
PlatformUrl string `json:"platform_url"`
// PostedAt Time the content was originally published on its platform (UTC).
PostedAt nullable.Nullable[time.Time] `json:"posted_at"`
ShareCount nullable.Nullable[int] `json:"share_count"`
// ThumbnailUrl URL of the content's thumbnail image.
ThumbnailUrl nullable.Nullable[string] `json:"thumbnail_url"`
// TotalEngagement Sum of the likes, comments, and shares the content has received.
TotalEngagement nullable.Nullable[int] `json:"total_engagement"`
// Transcript Transcribed speech from the content's audio, when available.
Transcript nullable.Nullable[string] `json:"transcript"`
// ViewCount Total number of times the content has been viewed.
ViewCount nullable.Nullable[int] `json:"view_count"`
}
Content A piece of content (a post, video, or image) and its metrics.
type ContentActionRequestRequest ¶
type ContentActionRequestRequest struct {
// ContentId Identifier of the content, as returned by `content.list`.
ContentId string `json:"content_id"`
}
ContentActionRequestRequest Request body for the content transcribe and AI summarize actions.
type ContentActionResponse ¶
type ContentActionResponse struct {
// ContentId Identifier of the content.
ContentId string `json:"content_id"`
// Status `PENDING` when the work was queued, `COMPLETED` when the content already has the result.
Status string `json:"status"`
}
ContentActionResponse State of a content transcribe or AI summarize request.
type ContentAiSummarizeFormdataRequestBody ¶
type ContentAiSummarizeFormdataRequestBody = ContentActionRequestRequest
ContentAiSummarizeFormdataRequestBody defines body for ContentAiSummarize for application/x-www-form-urlencoded ContentType.
type ContentAiSummarizeJSONRequestBody ¶
type ContentAiSummarizeJSONRequestBody = ContentActionRequestRequest
ContentAiSummarizeJSONRequestBody defines body for ContentAiSummarize for application/json ContentType.
type ContentAiSummarizeMultipartRequestBody ¶
type ContentAiSummarizeMultipartRequestBody = ContentActionRequestRequest
ContentAiSummarizeMultipartRequestBody defines body for ContentAiSummarize for multipart/form-data ContentType.
type ContentCreator ¶
type ContentCreator struct {
// ActiveContentCount Number of active content items attributed to the creator.
ActiveContentCount nullable.Nullable[int] `json:"active_content_count"`
// FollowerCount The creator's follower count as of the most recent observation.
FollowerCount nullable.Nullable[int] `json:"follower_count"`
// Id Unique identifier for the creator.
Id string `json:"id"`
// Name The creator's display name on the platform.
Name nullable.Nullable[string] `json:"name"`
// Platform The platform the creator publishes on. One of `instagram`, `tiktok`, `youtube`.
Platform nullable.Nullable[string] `json:"platform"`
// PlatformHandle The platform-side identifier of the creator's account.
PlatformHandle nullable.Nullable[string] `json:"platform_handle"`
// PlatformUrl Direct URL to the creator's profile on the platform.
PlatformUrl nullable.Nullable[string] `json:"platform_url"`
// ProfileBio The creator's profile bio as it appears on the platform.
ProfileBio nullable.Nullable[string] `json:"profile_bio"`
// ProfilePictureUrl URL of the creator's profile picture.
ProfilePictureUrl nullable.Nullable[string] `json:"profile_picture_url"`
// Username The creator's username or handle on the platform (without an `@`).
Username nullable.Nullable[string] `json:"username"`
}
ContentCreator The creator who published the content.
type ContentDetailsParams ¶
type ContentDetailsParams struct {
// BrandId Optional brand id. When supplied, the content must exist under that brand, otherwise the response is an empty result set. Populates the brand-specific response fields.
BrandId *string `form:"brand_id,omitempty" json:"brand_id,omitempty"`
}
ContentDetailsParams defines parameters for ContentDetails.
type ContentDiscoverFormdataRequestBody ¶
type ContentDiscoverFormdataRequestBody = ContentDiscoveryRequestRequest
ContentDiscoverFormdataRequestBody defines body for ContentDiscover for application/x-www-form-urlencoded ContentType.
type ContentDiscoverJSONRequestBody ¶
type ContentDiscoverJSONRequestBody = ContentDiscoveryRequestRequest
ContentDiscoverJSONRequestBody defines body for ContentDiscover for application/json ContentType.
type ContentDiscoverMultipartRequestBody ¶
type ContentDiscoverMultipartRequestBody = ContentDiscoveryRequestRequest
ContentDiscoverMultipartRequestBody defines body for ContentDiscover for multipart/form-data ContentType.
type ContentDiscovery ¶
type ContentDiscovery struct {
// CreatedAt When the discovery job was created (UTC, ISO 8601).
CreatedAt time.Time `json:"created_at"`
// Dispatched Whether a new indexing job was dispatched. Returns `false` when an identical search term was already requested within the recent deduplication window, in which case the in-flight job is reused.
Dispatched bool `json:"dispatched"`
// Id Identifier of the discovery job. Use it to track the job's status.
Id string `json:"id"`
// Platforms Platforms the indexing job was dispatched to.
Platforms nullable.Nullable[[]string] `json:"platforms"`
// SearchTerm The search term the discovery job was started for.
SearchTerm string `json:"search_term"`
// Status Status of the discovery job. One of `PENDING`, `IN_PROGRESS`, `COMPLETED`, `FAILED`, `CANCELLED`.
Status string `json:"status"`
// UpdatedAt Time of the most recent change to the discovery job (UTC, ISO 8601).
UpdatedAt time.Time `json:"updated_at"`
}
ContentDiscovery A content discovery job started for a search term.
type ContentDiscoveryRequestRequest ¶
type ContentDiscoveryRequestRequest struct {
// Platforms Platforms to index (`instagram`, `tiktok`, `youtube`). Defaults to all platforms when omitted.
Platforms *[]PlatformEnum `json:"platforms,omitempty"`
// SearchTerm The term to index content for (for example, `nike running`). Matching content is indexed asynchronously.
SearchTerm string `json:"search_term"`
}
ContentDiscoveryRequestRequest Request body for “POST /api/v1/content/discovery/“.
type ContentFilterInputRequest ¶
type ContentFilterInputRequest struct {
// BrandId Restrict to an accessible brand id (from `brands.list`). Defaults to your own brand when omitted.
BrandId *string `json:"brand_id,omitempty"`
// CommentCountMax Include only content with at most this many comments.
CommentCountMax *int `json:"comment_count_max,omitempty"`
// CommentCountMin Include only content with at least this many comments.
CommentCountMin *int `json:"comment_count_min,omitempty"`
// ContentForm Content medium. One of: VIDEO, IMAGE.
ContentForm *ContentFormEnum `json:"content_form,omitempty"`
// CreatorFollowerCountMax Include only content whose creator has at most this many followers.
CreatorFollowerCountMax *int `json:"creator_follower_count_max,omitempty"`
// CreatorFollowerCountMin Include only content whose creator has at least this many followers.
CreatorFollowerCountMin *int `json:"creator_follower_count_min,omitempty"`
// CreatorId Restrict to a single creator by id (from `creators.list`).
CreatorId *string `json:"creator_id,omitempty"`
// CreatorUsername Creator username substring. Case-insensitive.
CreatorUsername *string `json:"creator_username,omitempty"`
// EarnedMediaValueCentsMax Maximum estimated earned media value, in cents.
EarnedMediaValueCentsMax *int `json:"earned_media_value_cents_max,omitempty"`
// EarnedMediaValueCentsMin Minimum estimated earned media value, in cents.
EarnedMediaValueCentsMin *int `json:"earned_media_value_cents_min,omitempty"`
// EngagementRateMax Maximum engagement as a fraction of views (e.g. 0.05 = 5%).
EngagementRateMax *float64 `json:"engagement_rate_max,omitempty"`
// EngagementRateMin Minimum engagement as a fraction of views (e.g. 0.05 = 5%).
EngagementRateMin *float64 `json:"engagement_rate_min,omitempty"`
// ExternalId Platform-side post id. Matched exactly.
ExternalId *string `json:"external_id,omitempty"`
// IsInfluencer Include only the brand's influencer content, or exclude it with `false`.
IsInfluencer *bool `json:"is_influencer,omitempty"`
// IsOwned Include only content owned by the brand.
IsOwned *bool `json:"is_owned,omitempty"`
// IsTagged Include only content where the brand is tagged.
IsTagged *bool `json:"is_tagged,omitempty"`
// Language Language codes to include, for example `en` or `es`.
Language *[]string `json:"language,omitempty"`
// LikeCountMax Include only content with at most this many likes.
LikeCountMax *int `json:"like_count_max,omitempty"`
// LikeCountMin Include only content with at least this many likes.
LikeCountMin *int `json:"like_count_min,omitempty"`
// MediaDurationMax Include only content at most this many seconds long.
MediaDurationMax *float64 `json:"media_duration_max,omitempty"`
// MediaDurationMin Include only content at least this many seconds long.
MediaDurationMin *float64 `json:"media_duration_min,omitempty"`
// MentionType Restrict to these mention kinds. Any of: content, comment.
MentionType *[]MentionTypeEnum `json:"mention_type,omitempty"`
// MentionTypeNot Exclude these mention kinds. Any of: content, comment.
MentionTypeNot *[]MentionTypeEnum `json:"mention_type_not,omitempty"`
// NetPromoterScoreMax Maximum brand net promoter score for the content.
NetPromoterScoreMax *int `json:"net_promoter_score_max,omitempty"`
// NetPromoterScoreMin Minimum brand net promoter score for the content.
NetPromoterScoreMin *int `json:"net_promoter_score_min,omitempty"`
// OrderBy Sort the selected content. Any of: posted_at, view_count, like_count, comment_count, share_count, engagement_rate, total_engagement, earned_media_value_cents, net_promoter_score, relevance_score. A bare key sorts descending; prefix with `-` to sort ascending. Determines which content is retained when the set is capped. Defaults to `earned_media_value_cents` descending.
OrderBy *[]string `json:"order_by,omitempty"`
// Platform Platforms to include. Any of: instagram, tiktok, youtube.
Platform *[]PlatformEnum `json:"platform,omitempty"`
// PostedAfter Include only content posted at or after this UTC ISO-8601 time.
PostedAfter *time.Time `json:"posted_after,omitempty"`
// PostedBefore Include only content posted at or before this UTC ISO-8601 time.
PostedBefore *time.Time `json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from the current time, in days (1-365). `posted_after` and `posted_within_hours` take precedence over it.
PostedWithinDays *int `json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from the current time, in hours (1-8760). Takes precedence over `posted_within_days`. Counted back from `posted_before` when that is also supplied.
PostedWithinHours *int `json:"posted_within_hours,omitempty"`
// Search Full-text search across caption, transcript, and summary. Space-separated terms are AND-ed.
Search *string `json:"search,omitempty"`
ShareCountMax *int `json:"share_count_max,omitempty"`
ShareCountMin *int `json:"share_count_min,omitempty"`
// TotalEngagementMax Maximum total engagement (likes + comments + shares).
TotalEngagementMax *int `json:"total_engagement_max,omitempty"`
// TotalEngagementMin Minimum total engagement (likes + comments + shares).
TotalEngagementMin *int `json:"total_engagement_min,omitempty"`
// ViewCountMax Include only content with at most this many views.
ViewCountMax *int `json:"view_count_max,omitempty"`
// ViewCountMin Include only content with at least this many views.
ViewCountMin *int `json:"view_count_min,omitempty"`
}
ContentFilterInputRequest Selects which content the analysis runs over.
These parameters correspond one-to-one with the `content.list` filter parameters. At least one of `search`, `creator_id`, `creator_username`, `external_id`, or `brand_id` is required to scope the analysis. Supplied filters are combined with AND; min/max pairs are inclusive bounds, and dates are UTC ISO-8601 instants. When `posted_after`, `posted_before`, and `posted_within_days` are all omitted, the analysis defaults to the most recent window. The window between `posted_after` and `posted_before` must not exceed 366 days.
The analysis runs over the highest-ranked matching content by `order_by`, up to 500 items or the limit configured for your workspace. When `order_by` is omitted, content is ranked by `earned_media_value_cents` descending.
type ContentFormEnum ¶
type ContentFormEnum string
ContentFormEnum defines model for ContentFormEnum.
const ( ContentFormEnumIMAGE ContentFormEnum = "IMAGE" ContentFormEnumVIDEO ContentFormEnum = "VIDEO" )
Defines values for ContentFormEnum.
type ContentListParams ¶
type ContentListParams struct {
// BrandId One or more brand ids, comma-separated, as returned by `brands.list`. Scopes the query to those brands, populates the brand-specific fields, and enables the brand-only filters and sorts. Any id you cannot access returns `403`, and a malformed value returns `INVALID_ID`.
BrandId *string `form:"brand_id,omitempty" json:"brand_id,omitempty"`
// CommentCount Number of comments on the post.
CommentCount *int `form:"comment_count,omitempty" json:"comment_count,omitempty"`
// CommentCountMax Number of comments on the post. (Inclusive Upper Bound)
CommentCountMax *int `form:"comment_count_max,omitempty" json:"comment_count_max,omitempty"`
// CommentCountMin Number of comments on the post. (Inclusive Lower Bound)
CommentCountMin *int `form:"comment_count_min,omitempty" json:"comment_count_min,omitempty"`
// ContentForm Content medium. Case-sensitive; values are stored and returned in uppercase.
ContentForm *ContentListParamsContentForm `form:"content_form,omitempty" json:"content_form,omitempty"`
// CreatorFollowerCount Follower count of the post's creator.
CreatorFollowerCount *int `form:"creator_follower_count,omitempty" json:"creator_follower_count,omitempty"`
// CreatorFollowerCountMax Follower count of the post's creator. (Inclusive Upper Bound)
CreatorFollowerCountMax *int `form:"creator_follower_count_max,omitempty" json:"creator_follower_count_max,omitempty"`
// CreatorFollowerCountMin Follower count of the post's creator. (Inclusive Lower Bound)
CreatorFollowerCountMin *int `form:"creator_follower_count_min,omitempty" json:"creator_follower_count_min,omitempty"`
// CreatorId Limit results to a single creator by id (from `/api/v1/creator/`).
CreatorId *string `form:"creator_id,omitempty" json:"creator_id,omitempty"`
// CreatorUsername Creator username substring. Case-insensitive.
CreatorUsername *string `form:"creator_username,omitempty" json:"creator_username,omitempty"`
// EarnedMediaValueCents Estimated earned media value, in cents.
EarnedMediaValueCents *int `form:"earned_media_value_cents,omitempty" json:"earned_media_value_cents,omitempty"`
// EarnedMediaValueCentsMax Estimated earned media value, in cents. (Inclusive Upper Bound)
EarnedMediaValueCentsMax *int `form:"earned_media_value_cents_max,omitempty" json:"earned_media_value_cents_max,omitempty"`
// EarnedMediaValueCentsMin Estimated earned media value, in cents. (Inclusive Lower Bound)
EarnedMediaValueCentsMin *int `form:"earned_media_value_cents_min,omitempty" json:"earned_media_value_cents_min,omitempty"`
// EngagementRate Engagement as a fraction of views (for example, 0.05 = 5%).
EngagementRate *float32 `form:"engagement_rate,omitempty" json:"engagement_rate,omitempty"`
// EngagementRateMax Engagement as a fraction of views (for example, 0.05 = 5%). (Inclusive Upper Bound)
EngagementRateMax *float32 `form:"engagement_rate_max,omitempty" json:"engagement_rate_max,omitempty"`
// EngagementRateMin Engagement as a fraction of views (for example, 0.05 = 5%). (Inclusive Lower Bound)
EngagementRateMin *float32 `form:"engagement_rate_min,omitempty" json:"engagement_rate_min,omitempty"`
// ExternalId Platform-side post id. Matched exactly.
ExternalId *string `form:"external_id,omitempty" json:"external_id,omitempty"`
// IsInfluencer Limit results to the brand's influencer content, or exclude it with `false`. Requires brand_id.
IsInfluencer *bool `form:"is_influencer,omitempty" json:"is_influencer,omitempty"`
// IsOwned Limit results to content owned by the brand. Requires brand_id.
IsOwned *bool `form:"is_owned,omitempty" json:"is_owned,omitempty"`
// IsTagged Limit results to content where the brand is tagged. Requires brand_id.
IsTagged *bool `form:"is_tagged,omitempty" json:"is_tagged,omitempty"`
// Language Language codes to include, comma-separated (for example, en, es).
Language *[]string `form:"language,omitempty" json:"language,omitempty"`
// LikeCount Number of likes on the post.
LikeCount *int `form:"like_count,omitempty" json:"like_count,omitempty"`
// LikeCountMax Number of likes on the post. (Inclusive Upper Bound)
LikeCountMax *int `form:"like_count_max,omitempty" json:"like_count_max,omitempty"`
// LikeCountMin Number of likes on the post. (Inclusive Lower Bound)
LikeCountMin *int `form:"like_count_min,omitempty" json:"like_count_min,omitempty"`
// MediaDuration Length of the media in seconds.
MediaDuration *float32 `form:"media_duration,omitempty" json:"media_duration,omitempty"`
// MediaDurationMax Length of the media in seconds. (Inclusive Upper Bound)
MediaDurationMax *float32 `form:"media_duration_max,omitempty" json:"media_duration_max,omitempty"`
// MediaDurationMin Length of the media in seconds. (Inclusive Lower Bound)
MediaDurationMin *float32 `form:"media_duration_min,omitempty" json:"media_duration_min,omitempty"`
// MentionType Limit results to these mention kinds, comma-separated. Requires brand_id.
MentionType *[]ContentListParamsMentionType `form:"mention_type,omitempty" json:"mention_type,omitempty"`
// MentionTypeNot Exclude these mention kinds, comma-separated. Requires brand_id.
MentionTypeNot *[]ContentListParamsMentionTypeNot `form:"mention_type_not,omitempty" json:"mention_type_not,omitempty"`
// NetPromoterScore Brand net promoter score for the content. Requires brand_id.
NetPromoterScore *int `form:"net_promoter_score,omitempty" json:"net_promoter_score,omitempty"`
// NetPromoterScoreMax Brand net promoter score for the content. Requires brand_id. (Inclusive Upper Bound)
NetPromoterScoreMax *int `form:"net_promoter_score_max,omitempty" json:"net_promoter_score_max,omitempty"`
// NetPromoterScoreMin Brand net promoter score for the content. Requires brand_id. (Inclusive Lower Bound)
NetPromoterScoreMin *int `form:"net_promoter_score_min,omitempty" json:"net_promoter_score_min,omitempty"`
// OrderBy Sort the results. Any of: posted_at, view_count, like_count, comment_count, share_count, engagement_rate, total_engagement, earned_media_value_cents, net_promoter_score, relevance_score. A bare key sorts descending; prefix with `-` to sort ascending.
//
// **Sort direction is inverted:** `order_by=field` sorts descending and `order_by=-field` sorts ascending. Comma-separate to sort by multiple fields.
OrderBy *[]ContentListParamsOrderBy `form:"order_by,omitempty" json:"order_by,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
// Platform Platforms to include, comma-separated.
Platform *[]ContentListParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// Posted When the post was published (UTC, ISO 8601).
Posted *time.Time `form:"posted,omitempty" json:"posted,omitempty"`
// PostedAfter When the post was published (UTC, ISO 8601). (Inclusive Lower Bound)
PostedAfter *time.Time `form:"posted_after,omitempty" json:"posted_after,omitempty"`
// PostedBefore When the post was published (UTC, ISO 8601). (Inclusive Upper Bound)
PostedBefore *time.Time `form:"posted_before,omitempty" json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from the current time, in days (1-365). Defaults to 7 when no date parameter is supplied. `posted_after` and `posted_within_hours` take precedence over it.
PostedWithinDays *int `form:"posted_within_days,omitempty" json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from the current time, in hours (1-8760). Takes precedence over `posted_within_days`. Counted back from `posted_before` when that is also supplied.
PostedWithinHours *int `form:"posted_within_hours,omitempty" json:"posted_within_hours,omitempty"`
// Search Full-text search across the caption, transcript, summary, and hashtags.
//
// **Syntax**
// - Multiple words are combined with AND: `nike running` matches content containing both `nike` and `running`.
// - `OR` (case-insensitive) matches either side: `nike OR adidas`.
// - `NOT` (case-insensitive) excludes a term: `running NOT marathon` matches `running` but not `marathon`.
// - Wrap a phrase in double quotes to match the words in order: `"summer collection"`.
// - Negate a phrase with `NOT`: `NOT "out of stock"`.
// - Group with parentheses to combine operators: `(nike OR adidas) running`.
// - `ONEAR/n` (case-insensitive) matches terms within `n` words of each other, in order: `apple ONEAR/2 watch` matches `apple watch` and `apple smart watch`, but not `watch ... apple`. It binds more tightly than `AND` and `OR`, so `apple ONEAR/2 watch AND cheap` is interpreted as `(apple near watch) AND cheap`.
//
// **Examples**
// - `nike running` - contains both terms.
// - `nike OR adidas` - contains either brand.
// - `"summer sale" NOT clearance` - the exact phrase, without `clearance`.
// - `(running OR cycling) NOT "beginner guide"` - either sport, excluding the phrase.
// - `apple ONEAR/2 watch` - `apple` within two words before `watch`.
Search *string `form:"search,omitempty" json:"search,omitempty"`
ShareCount *int `form:"share_count,omitempty" json:"share_count,omitempty"`
ShareCountMax *int `form:"share_count_max,omitempty" json:"share_count_max,omitempty"`
ShareCountMin *int `form:"share_count_min,omitempty" json:"share_count_min,omitempty"`
// TotalEngagement Total engagement (likes plus comments plus shares).
TotalEngagement *int `form:"total_engagement,omitempty" json:"total_engagement,omitempty"`
// TotalEngagementMax Total engagement (likes plus comments plus shares). (Inclusive Upper Bound)
TotalEngagementMax *int `form:"total_engagement_max,omitempty" json:"total_engagement_max,omitempty"`
// TotalEngagementMin Total engagement (likes plus comments plus shares). (Inclusive Lower Bound)
TotalEngagementMin *int `form:"total_engagement_min,omitempty" json:"total_engagement_min,omitempty"`
// ViewCount Number of views on the post.
ViewCount *int `form:"view_count,omitempty" json:"view_count,omitempty"`
// ViewCountMax Number of views on the post. (Inclusive Upper Bound)
ViewCountMax *int `form:"view_count_max,omitempty" json:"view_count_max,omitempty"`
// ViewCountMin Number of views on the post. (Inclusive Lower Bound)
ViewCountMin *int `form:"view_count_min,omitempty" json:"view_count_min,omitempty"`
}
ContentListParams defines parameters for ContentList.
type ContentListParamsContentForm ¶
type ContentListParamsContentForm string
ContentListParamsContentForm defines parameters for ContentList.
const ( ContentListParamsContentFormIMAGE ContentListParamsContentForm = "IMAGE" ContentListParamsContentFormVIDEO ContentListParamsContentForm = "VIDEO" )
Defines values for ContentListParamsContentForm.
type ContentListParamsMentionType ¶
type ContentListParamsMentionType string
ContentListParamsMentionType defines parameters for ContentList.
const ( ContentListParamsMentionTypeComment ContentListParamsMentionType = "comment" ContentListParamsMentionTypeContent ContentListParamsMentionType = "content" )
Defines values for ContentListParamsMentionType.
type ContentListParamsMentionTypeNot ¶
type ContentListParamsMentionTypeNot string
ContentListParamsMentionTypeNot defines parameters for ContentList.
const ( ContentListParamsMentionTypeNotComment ContentListParamsMentionTypeNot = "comment" ContentListParamsMentionTypeNotContent ContentListParamsMentionTypeNot = "content" )
Defines values for ContentListParamsMentionTypeNot.
type ContentListParamsOrderBy ¶
type ContentListParamsOrderBy string
ContentListParamsOrderBy defines parameters for ContentList.
const ( ContentListParamsOrderByCommentCount ContentListParamsOrderBy = "comment_count" ContentListParamsOrderByEarnedMediaValueCents ContentListParamsOrderBy = "earned_media_value_cents" ContentListParamsOrderByEngagementRate ContentListParamsOrderBy = "engagement_rate" ContentListParamsOrderByLikeCount ContentListParamsOrderBy = "like_count" ContentListParamsOrderByMinusCommentCount ContentListParamsOrderBy = "-comment_count" ContentListParamsOrderByMinusEarnedMediaValueCents ContentListParamsOrderBy = "-earned_media_value_cents" ContentListParamsOrderByMinusEngagementRate ContentListParamsOrderBy = "-engagement_rate" ContentListParamsOrderByMinusLikeCount ContentListParamsOrderBy = "-like_count" ContentListParamsOrderByMinusNetPromoterScore ContentListParamsOrderBy = "-net_promoter_score" ContentListParamsOrderByMinusPostedAt ContentListParamsOrderBy = "-posted_at" ContentListParamsOrderByMinusRelevanceScore ContentListParamsOrderBy = "-relevance_score" ContentListParamsOrderByMinusTotalEngagement ContentListParamsOrderBy = "-total_engagement" ContentListParamsOrderByMinusViewCount ContentListParamsOrderBy = "-view_count" ContentListParamsOrderByNetPromoterScore ContentListParamsOrderBy = "net_promoter_score" ContentListParamsOrderByPostedAt ContentListParamsOrderBy = "posted_at" ContentListParamsOrderByRelevanceScore ContentListParamsOrderBy = "relevance_score" ContentListParamsOrderByTotalEngagement ContentListParamsOrderBy = "total_engagement" ContentListParamsOrderByViewCount ContentListParamsOrderBy = "view_count" )
Defines values for ContentListParamsOrderBy.
type ContentListParamsPlatform ¶
type ContentListParamsPlatform string
ContentListParamsPlatform defines parameters for ContentList.
const ( ContentListParamsPlatformInstagram ContentListParamsPlatform = "instagram" ContentListParamsPlatformTiktok ContentListParamsPlatform = "tiktok" ContentListParamsPlatformYoutube ContentListParamsPlatform = "youtube" )
Defines values for ContentListParamsPlatform.
type ContentScopeRequest ¶
type ContentScopeRequest struct {
// Liked Whether to include content the creator liked.
Liked *bool `json:"liked,omitempty"`
// Owned Whether to include content the creator originally posted.
Owned *bool `json:"owned,omitempty"`
// Repost Whether to include content the creator reposted.
Repost *bool `json:"repost,omitempty"`
}
ContentScopeRequest Specifies which of the creator's content relationships feed the analysis.
Flags that are omitted default to owned content only.
type ContentStatistics ¶
type ContentStatistics struct {
// EngagementRate Total engagement divided by total views across the filtered set. Null when the filtered set has no recorded views.
EngagementRate nullable.Nullable[float64] `json:"engagement_rate"`
// PostCount Number of unique pieces of content in the filtered set.
PostCount int `json:"post_count"`
// TotalComments Total comments across the filtered set.
TotalComments int `json:"total_comments"`
// TotalEarnedMediaValueCents Total estimated marketing value across the filtered set, in US cents. Each piece of content contributes once even when multiple brand contexts match it through `brand_id`.
TotalEarnedMediaValueCents int `json:"total_earned_media_value_cents"`
// TotalEngagement Total engagement (likes + comments + shares) across the filtered set.
TotalEngagement int `json:"total_engagement"`
// TotalLikes Total likes across the filtered set.
TotalLikes int `json:"total_likes"`
// TotalMediaDuration Total media length in seconds across the filtered set.
TotalMediaDuration float64 `json:"total_media_duration"`
TotalShares int `json:"total_shares"`
// TotalViews Total views across the filtered set.
TotalViews int `json:"total_views"`
// UniqueCreatorCount Number of distinct creators represented in the filtered set.
UniqueCreatorCount int `json:"unique_creator_count"`
}
ContentStatistics Aggregated totals for a filtered set of content.
type ContentStatisticsParams ¶
type ContentStatisticsParams struct {
// BrandId One or more brand ids, comma-separated, as returned by `brands.list`. Scopes the query to those brands, populates the brand-specific fields, and enables the brand-only filters and sorts. Any id you cannot access returns `403`, and a malformed value returns `INVALID_ID`.
BrandId *string `form:"brand_id,omitempty" json:"brand_id,omitempty"`
// CommentCount Number of comments on the post.
CommentCount *int `form:"comment_count,omitempty" json:"comment_count,omitempty"`
// CommentCountMax Number of comments on the post. (Inclusive Upper Bound)
CommentCountMax *int `form:"comment_count_max,omitempty" json:"comment_count_max,omitempty"`
// CommentCountMin Number of comments on the post. (Inclusive Lower Bound)
CommentCountMin *int `form:"comment_count_min,omitempty" json:"comment_count_min,omitempty"`
// ContentForm Content medium. Case-sensitive; values are stored and returned in uppercase.
ContentForm *ContentStatisticsParamsContentForm `form:"content_form,omitempty" json:"content_form,omitempty"`
// CreatorFollowerCount Follower count of the post's creator.
CreatorFollowerCount *int `form:"creator_follower_count,omitempty" json:"creator_follower_count,omitempty"`
// CreatorFollowerCountMax Follower count of the post's creator. (Inclusive Upper Bound)
CreatorFollowerCountMax *int `form:"creator_follower_count_max,omitempty" json:"creator_follower_count_max,omitempty"`
// CreatorFollowerCountMin Follower count of the post's creator. (Inclusive Lower Bound)
CreatorFollowerCountMin *int `form:"creator_follower_count_min,omitempty" json:"creator_follower_count_min,omitempty"`
// CreatorId Limit results to a single creator by id (from `/api/v1/creator/`).
CreatorId *string `form:"creator_id,omitempty" json:"creator_id,omitempty"`
// CreatorUsername Creator username substring. Case-insensitive.
CreatorUsername *string `form:"creator_username,omitempty" json:"creator_username,omitempty"`
// EarnedMediaValueCents Estimated earned media value, in cents.
EarnedMediaValueCents *int `form:"earned_media_value_cents,omitempty" json:"earned_media_value_cents,omitempty"`
// EarnedMediaValueCentsMax Estimated earned media value, in cents. (Inclusive Upper Bound)
EarnedMediaValueCentsMax *int `form:"earned_media_value_cents_max,omitempty" json:"earned_media_value_cents_max,omitempty"`
// EarnedMediaValueCentsMin Estimated earned media value, in cents. (Inclusive Lower Bound)
EarnedMediaValueCentsMin *int `form:"earned_media_value_cents_min,omitempty" json:"earned_media_value_cents_min,omitempty"`
// EngagementRate Engagement as a fraction of views (for example, 0.05 = 5%).
EngagementRate *float32 `form:"engagement_rate,omitempty" json:"engagement_rate,omitempty"`
// EngagementRateMax Engagement as a fraction of views (for example, 0.05 = 5%). (Inclusive Upper Bound)
EngagementRateMax *float32 `form:"engagement_rate_max,omitempty" json:"engagement_rate_max,omitempty"`
// EngagementRateMin Engagement as a fraction of views (for example, 0.05 = 5%). (Inclusive Lower Bound)
EngagementRateMin *float32 `form:"engagement_rate_min,omitempty" json:"engagement_rate_min,omitempty"`
// ExternalId Platform-side post id. Matched exactly.
ExternalId *string `form:"external_id,omitempty" json:"external_id,omitempty"`
// IsInfluencer Limit results to the brand's influencer content, or exclude it with `false`. Requires brand_id.
IsInfluencer *bool `form:"is_influencer,omitempty" json:"is_influencer,omitempty"`
// IsOwned Limit results to content owned by the brand. Requires brand_id.
IsOwned *bool `form:"is_owned,omitempty" json:"is_owned,omitempty"`
// IsTagged Limit results to content where the brand is tagged. Requires brand_id.
IsTagged *bool `form:"is_tagged,omitempty" json:"is_tagged,omitempty"`
// Language Language codes to include, comma-separated (for example, en, es).
Language *[]string `form:"language,omitempty" json:"language,omitempty"`
// LikeCount Number of likes on the post.
LikeCount *int `form:"like_count,omitempty" json:"like_count,omitempty"`
// LikeCountMax Number of likes on the post. (Inclusive Upper Bound)
LikeCountMax *int `form:"like_count_max,omitempty" json:"like_count_max,omitempty"`
// LikeCountMin Number of likes on the post. (Inclusive Lower Bound)
LikeCountMin *int `form:"like_count_min,omitempty" json:"like_count_min,omitempty"`
// MediaDuration Length of the media in seconds.
MediaDuration *float32 `form:"media_duration,omitempty" json:"media_duration,omitempty"`
// MediaDurationMax Length of the media in seconds. (Inclusive Upper Bound)
MediaDurationMax *float32 `form:"media_duration_max,omitempty" json:"media_duration_max,omitempty"`
// MediaDurationMin Length of the media in seconds. (Inclusive Lower Bound)
MediaDurationMin *float32 `form:"media_duration_min,omitempty" json:"media_duration_min,omitempty"`
// MentionType Limit results to these mention kinds, comma-separated. Requires brand_id.
MentionType *[]ContentStatisticsParamsMentionType `form:"mention_type,omitempty" json:"mention_type,omitempty"`
// MentionTypeNot Exclude these mention kinds, comma-separated. Requires brand_id.
MentionTypeNot *[]ContentStatisticsParamsMentionTypeNot `form:"mention_type_not,omitempty" json:"mention_type_not,omitempty"`
// NetPromoterScore Brand net promoter score for the content. Requires brand_id.
NetPromoterScore *int `form:"net_promoter_score,omitempty" json:"net_promoter_score,omitempty"`
// NetPromoterScoreMax Brand net promoter score for the content. Requires brand_id. (Inclusive Upper Bound)
NetPromoterScoreMax *int `form:"net_promoter_score_max,omitempty" json:"net_promoter_score_max,omitempty"`
// NetPromoterScoreMin Brand net promoter score for the content. Requires brand_id. (Inclusive Lower Bound)
NetPromoterScoreMin *int `form:"net_promoter_score_min,omitempty" json:"net_promoter_score_min,omitempty"`
// OrderBy Sort the results. Any of: posted_at, view_count, like_count, comment_count, share_count, engagement_rate, total_engagement, earned_media_value_cents, net_promoter_score, relevance_score. A bare key sorts descending; prefix with `-` to sort ascending.
//
// **Sort direction is inverted:** `order_by=field` sorts descending and `order_by=-field` sorts ascending. Comma-separate to sort by multiple fields.
OrderBy *[]ContentStatisticsParamsOrderBy `form:"order_by,omitempty" json:"order_by,omitempty"`
// Platform Platforms to include, comma-separated.
Platform *[]ContentStatisticsParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// Posted When the post was published (UTC, ISO 8601).
Posted *time.Time `form:"posted,omitempty" json:"posted,omitempty"`
// PostedAfter When the post was published (UTC, ISO 8601). (Inclusive Lower Bound)
PostedAfter *time.Time `form:"posted_after,omitempty" json:"posted_after,omitempty"`
// PostedBefore When the post was published (UTC, ISO 8601). (Inclusive Upper Bound)
PostedBefore *time.Time `form:"posted_before,omitempty" json:"posted_before,omitempty"`
// PostedWithinDays Start of the window, counted back from the current time, in days (1-365). Defaults to 7 when no date parameter is supplied. `posted_after` and `posted_within_hours` take precedence over it.
PostedWithinDays *int `form:"posted_within_days,omitempty" json:"posted_within_days,omitempty"`
// PostedWithinHours Start of the window, counted back from the current time, in hours (1-8760). Takes precedence over `posted_within_days`. Counted back from `posted_before` when that is also supplied.
PostedWithinHours *int `form:"posted_within_hours,omitempty" json:"posted_within_hours,omitempty"`
// Search Full-text search across the caption, transcript, summary, and hashtags.
//
// **Syntax**
// - Multiple words are combined with AND: `nike running` matches content containing both `nike` and `running`.
// - `OR` (case-insensitive) matches either side: `nike OR adidas`.
// - `NOT` (case-insensitive) excludes a term: `running NOT marathon` matches `running` but not `marathon`.
// - Wrap a phrase in double quotes to match the words in order: `"summer collection"`.
// - Negate a phrase with `NOT`: `NOT "out of stock"`.
// - Group with parentheses to combine operators: `(nike OR adidas) running`.
// - `ONEAR/n` (case-insensitive) matches terms within `n` words of each other, in order: `apple ONEAR/2 watch` matches `apple watch` and `apple smart watch`, but not `watch ... apple`. It binds more tightly than `AND` and `OR`, so `apple ONEAR/2 watch AND cheap` is interpreted as `(apple near watch) AND cheap`.
//
// **Examples**
// - `nike running` - contains both terms.
// - `nike OR adidas` - contains either brand.
// - `"summer sale" NOT clearance` - the exact phrase, without `clearance`.
// - `(running OR cycling) NOT "beginner guide"` - either sport, excluding the phrase.
// - `apple ONEAR/2 watch` - `apple` within two words before `watch`.
Search *string `form:"search,omitempty" json:"search,omitempty"`
ShareCount *int `form:"share_count,omitempty" json:"share_count,omitempty"`
ShareCountMax *int `form:"share_count_max,omitempty" json:"share_count_max,omitempty"`
ShareCountMin *int `form:"share_count_min,omitempty" json:"share_count_min,omitempty"`
// TotalEngagement Total engagement (likes plus comments plus shares).
TotalEngagement *int `form:"total_engagement,omitempty" json:"total_engagement,omitempty"`
// TotalEngagementMax Total engagement (likes plus comments plus shares). (Inclusive Upper Bound)
TotalEngagementMax *int `form:"total_engagement_max,omitempty" json:"total_engagement_max,omitempty"`
// TotalEngagementMin Total engagement (likes plus comments plus shares). (Inclusive Lower Bound)
TotalEngagementMin *int `form:"total_engagement_min,omitempty" json:"total_engagement_min,omitempty"`
// ViewCount Number of views on the post.
ViewCount *int `form:"view_count,omitempty" json:"view_count,omitempty"`
// ViewCountMax Number of views on the post. (Inclusive Upper Bound)
ViewCountMax *int `form:"view_count_max,omitempty" json:"view_count_max,omitempty"`
// ViewCountMin Number of views on the post. (Inclusive Lower Bound)
ViewCountMin *int `form:"view_count_min,omitempty" json:"view_count_min,omitempty"`
}
ContentStatisticsParams defines parameters for ContentStatistics.
type ContentStatisticsParamsContentForm ¶
type ContentStatisticsParamsContentForm string
ContentStatisticsParamsContentForm defines parameters for ContentStatistics.
const ( IMAGE ContentStatisticsParamsContentForm = "IMAGE" VIDEO ContentStatisticsParamsContentForm = "VIDEO" )
Defines values for ContentStatisticsParamsContentForm.
type ContentStatisticsParamsMentionType ¶
type ContentStatisticsParamsMentionType string
ContentStatisticsParamsMentionType defines parameters for ContentStatistics.
const ( ContentStatisticsParamsMentionTypeComment ContentStatisticsParamsMentionType = "comment" ContentStatisticsParamsMentionTypeContent ContentStatisticsParamsMentionType = "content" )
Defines values for ContentStatisticsParamsMentionType.
type ContentStatisticsParamsMentionTypeNot ¶
type ContentStatisticsParamsMentionTypeNot string
ContentStatisticsParamsMentionTypeNot defines parameters for ContentStatistics.
const ( ContentStatisticsParamsMentionTypeNotComment ContentStatisticsParamsMentionTypeNot = "comment" ContentStatisticsParamsMentionTypeNotContent ContentStatisticsParamsMentionTypeNot = "content" )
Defines values for ContentStatisticsParamsMentionTypeNot.
type ContentStatisticsParamsOrderBy ¶
type ContentStatisticsParamsOrderBy string
ContentStatisticsParamsOrderBy defines parameters for ContentStatistics.
const ( CommentCount ContentStatisticsParamsOrderBy = "comment_count" EarnedMediaValueCents ContentStatisticsParamsOrderBy = "earned_media_value_cents" EngagementRate ContentStatisticsParamsOrderBy = "engagement_rate" LikeCount ContentStatisticsParamsOrderBy = "like_count" MinusCommentCount ContentStatisticsParamsOrderBy = "-comment_count" MinusEarnedMediaValueCents ContentStatisticsParamsOrderBy = "-earned_media_value_cents" MinusEngagementRate ContentStatisticsParamsOrderBy = "-engagement_rate" MinusLikeCount ContentStatisticsParamsOrderBy = "-like_count" MinusNetPromoterScore ContentStatisticsParamsOrderBy = "-net_promoter_score" MinusPostedAt ContentStatisticsParamsOrderBy = "-posted_at" MinusRelevanceScore ContentStatisticsParamsOrderBy = "-relevance_score" MinusTotalEngagement ContentStatisticsParamsOrderBy = "-total_engagement" MinusViewCount ContentStatisticsParamsOrderBy = "-view_count" NetPromoterScore ContentStatisticsParamsOrderBy = "net_promoter_score" PostedAt ContentStatisticsParamsOrderBy = "posted_at" RelevanceScore ContentStatisticsParamsOrderBy = "relevance_score" TotalEngagement ContentStatisticsParamsOrderBy = "total_engagement" ViewCount ContentStatisticsParamsOrderBy = "view_count" )
Defines values for ContentStatisticsParamsOrderBy.
type ContentStatisticsParamsPlatform ¶
type ContentStatisticsParamsPlatform string
ContentStatisticsParamsPlatform defines parameters for ContentStatistics.
const ( ContentStatisticsParamsPlatformInstagram ContentStatisticsParamsPlatform = "instagram" ContentStatisticsParamsPlatformTiktok ContentStatisticsParamsPlatform = "tiktok" ContentStatisticsParamsPlatformYoutube ContentStatisticsParamsPlatform = "youtube" )
Defines values for ContentStatisticsParamsPlatform.
type ContentTranscribeFormdataRequestBody ¶
type ContentTranscribeFormdataRequestBody = ContentActionRequestRequest
ContentTranscribeFormdataRequestBody defines body for ContentTranscribe for application/x-www-form-urlencoded ContentType.
type ContentTranscribeJSONRequestBody ¶
type ContentTranscribeJSONRequestBody = ContentActionRequestRequest
ContentTranscribeJSONRequestBody defines body for ContentTranscribe for application/json ContentType.
type ContentTranscribeMultipartRequestBody ¶
type ContentTranscribeMultipartRequestBody = ContentActionRequestRequest
ContentTranscribeMultipartRequestBody defines body for ContentTranscribe for multipart/form-data ContentType.
type Creator ¶
type Creator struct {
// ActiveContentCount Number of active content items attributed to the creator.
ActiveContentCount nullable.Nullable[int] `json:"active_content_count"`
// Email The creator's email address when known by the platform; empty otherwise.
Email nullable.Nullable[string] `json:"email"`
// FollowerCount The creator's follower count as of the most recent observation.
FollowerCount int `json:"follower_count"`
// Id Unique identifier of the creator.
Id string `json:"id"`
// Name The creator's display name on the platform.
Name nullable.Nullable[string] `json:"name"`
// Platform The platform the creator is on. One of `instagram`, `tiktok`, `youtube`.
Platform string `json:"platform"`
// PlatformHandle The platform-side identifier of the account.
PlatformHandle string `json:"platform_handle"`
// PlatformUrl Direct URL to the creator's profile on the platform.
PlatformUrl string `json:"platform_url"`
// ProfileBio The creator's profile bio as it appears on the platform.
ProfileBio nullable.Nullable[string] `json:"profile_bio"`
// ProfilePictureUrl URL of the creator's profile picture.
ProfilePictureUrl string `json:"profile_picture_url"`
// Username The creator's username or handle on the platform, without the `@`.
Username nullable.Nullable[string] `json:"username"`
}
Creator A creator and their public profile fields.
type CreatorSync ¶
type CreatorSync struct {
// CreatedAt Time the job was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// CreatorId Identifier of the synced creator. Returns `null` until the creator has been resolved, which happens once the first posts have been read.
CreatorId nullable.Nullable[string] `json:"creator_id"`
// Id Identifier of the sync job. Use this value on follow-up calls. It is the same identifier `creator_vetting` reports as `sync_job_id`.
Id string `json:"id"`
// ProfileUrl The profile URL this job syncs. Returns `null` for a job whose source URL was not recorded.
ProfileUrl nullable.Nullable[string] `json:"profile_url,omitempty"`
// Status Where the job has got to. One of `SCHEDULED`, `SYNCING`, `SUCCESS`, `FAILED`.
Status string `json:"status"`
// UpdatedAt Time the job was most recently modified (UTC, ISO-8601).
UpdatedAt time.Time `json:"updated_at"`
}
CreatorSync One creator sync job.
type CreatorSyncCreateFormdataRequestBody ¶
type CreatorSyncCreateFormdataRequestBody = CreatorSyncCreateRequest
CreatorSyncCreateFormdataRequestBody defines body for CreatorSyncCreate for application/x-www-form-urlencoded ContentType.
type CreatorSyncCreateJSONRequestBody ¶
type CreatorSyncCreateJSONRequestBody = CreatorSyncCreateRequest
CreatorSyncCreateJSONRequestBody defines body for CreatorSyncCreate for application/json ContentType.
type CreatorSyncCreateMultipartRequestBody ¶
type CreatorSyncCreateMultipartRequestBody = CreatorSyncCreateRequest
CreatorSyncCreateMultipartRequestBody defines body for CreatorSyncCreate for multipart/form-data ContentType.
type CreatorSyncCreateRequest ¶
type CreatorSyncCreateRequest struct {
// ProfileUrl Direct URL to the creator's profile on a supported platform (`tiktok`, `instagram`, `youtube`).
ProfileUrl string `json:"profile_url"`
}
CreatorSyncCreateRequest Request body for “POST /api/v1/creator_sync/“.
type CreatorSyncListParams ¶
type CreatorSyncListParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
CreatorSyncListParams defines parameters for CreatorSyncList.
type CreatorVetting ¶
type CreatorVetting struct {
// Analysis The analysis runs tied to this vetting, ordered newest first.
Analysis []CreatorVettingRun `json:"analysis"`
// ContentScope The content relationships analyzed for this creator.
ContentScope map[string]interface{} `json:"content_scope"`
// CreatedAt Time the vetting was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// Creator A creator and their public profile fields.
Creator Creator `json:"creator"`
// CreatorId Identifier of the creator the vetting is tied to. Returns “null“ until the creator has been resolved.
CreatorId nullable.Nullable[string] `json:"creator_id"`
// Id Identifier of the vetting. Use this value on follow-up calls.
Id string `json:"id"`
// SafetyChecks The safety criteria submitted with this vetting request.
SafetyChecks []map[string]interface{} `json:"safety_checks"`
// Status Status of the vetting. One of `IN_PROGRESS`, `COMPLETED`, `EMPTY_RESULT` (finished with no matching content), or `FAILED`.
Status string `json:"status"`
// SyncJobId Identifier of the scrape job triggered for this request. Populated only when `resync_profile=true` was supplied and the creator already existed; `null` otherwise.
SyncJobId nullable.Nullable[string] `json:"sync_job_id"`
// Type Always `CREATOR_ANALYSIS` here.
Type string `json:"type"`
// UpdatedAt Time the vetting was most recently modified (UTC, ISO-8601).
UpdatedAt time.Time `json:"updated_at"`
}
CreatorVetting A creator vetting, including its analysis runs and request settings.
type CreatorVettingContentStatisticsParams ¶
type CreatorVettingContentStatisticsParams struct {
// VettingId Identifier of the vetting, obtained from `creator_vetting.list`.
VettingId string `form:"vetting_id" json:"vetting_id"`
}
CreatorVettingContentStatisticsParams defines parameters for CreatorVettingContentStatistics.
type CreatorVettingContentsParams ¶
type CreatorVettingContentsParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
// VettingId Identifier of the vetting, obtained from `creator_vetting.list`.
VettingId string `form:"vetting_id" json:"vetting_id"`
}
CreatorVettingContentsParams defines parameters for CreatorVettingContents.
type CreatorVettingCreateFormdataRequestBody ¶
type CreatorVettingCreateFormdataRequestBody = CreatorVettingRequest
CreatorVettingCreateFormdataRequestBody defines body for CreatorVettingCreate for application/x-www-form-urlencoded ContentType.
type CreatorVettingCreateJSONRequestBody ¶
type CreatorVettingCreateJSONRequestBody = CreatorVettingRequest
CreatorVettingCreateJSONRequestBody defines body for CreatorVettingCreate for application/json ContentType.
type CreatorVettingCreateMultipartRequestBody ¶
type CreatorVettingCreateMultipartRequestBody = CreatorVettingRequest
CreatorVettingCreateMultipartRequestBody defines body for CreatorVettingCreate for multipart/form-data ContentType.
type CreatorVettingListParams ¶
type CreatorVettingListParams struct {
// CreatorId Identifier of a creator, obtained from `creators.list`. When supplied, only vetting analyses tied to that creator are returned. Returns `INVALID_ID` if the value is not a valid creator identifier.
CreatorId *string `form:"creator_id,omitempty" json:"creator_id,omitempty"`
// Id Identifier of a vetting. When supplied, only that vetting is returned. Returns `INVALID_ID` if the value is not valid.
Id *string `form:"id,omitempty" json:"id,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
CreatorVettingListParams defines parameters for CreatorVettingList.
type CreatorVettingRequest ¶
type CreatorVettingRequest struct {
// ContentScope The creator's content relationships to analyze. Defaults to owned content only when omitted.
ContentScope *ContentScopeRequest `json:"content_scope,omitempty"`
// ProfileUrl Direct URL to the creator's profile on a supported platform (`instagram`, `tiktok`, `youtube`).
ProfileUrl string `json:"profile_url"`
// ResyncProfile When true, re-indexes the creator even if they already exist in our database.
ResyncProfile *bool `json:"resync_profile,omitempty"`
// SafetyChecks Safety criteria for the AI pipeline to evaluate for this creator.
//
// Example:
// “`json
// [
// {
// "type": "DISCLOSURE"
// }
// ]
// “`
SafetyChecks *[]SafetyCheckRequest `json:"safety_checks,omitempty"`
}
CreatorVettingRequest Request body for “POST /api/v1/creator/vetting/“.
type CreatorVettingResult ¶
type CreatorVettingResult struct {
// CreatedAt Time the analysis was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// Id Identifier of the analysis record.
Id string `json:"id"`
// ModifiedAt Time the analysis was most recently modified (UTC, ISO-8601).
ModifiedAt time.Time `json:"modified_at"`
// Result Signed, time-limited download of an analysis run's result payload.
Result *ResultFile `json:"result,omitempty"`
// Scope The subject this analysis covers: `CONTENT` or `COMMENT`.
Scope string `json:"scope"`
// Status Status of the analysis. One of `IN_PROGRESS`, `COMPLETED`, `EMPTY_RESULT` (finished with no matching content), or `FAILED`.
Status string `json:"status"`
// VettingId Identifier of the vetting this analysis belongs to.
VettingId string `json:"vetting_id"`
}
CreatorVettingResult An analysis run together with its downloadable “result“.
Returned by `creator_vetting.results` for the analysis `creator_vetting.list` points to.
type CreatorVettingResultsParams ¶
type CreatorVettingResultsParams struct {
// Id Identifier of a single analysis. Returns only that analysis. Required unless `vetting_id` is supplied. Returns `INVALID_ID` if malformed.
Id *string `form:"id,omitempty" json:"id,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
// VettingId Identifier of the vetting, obtained from `creator_vetting.list`. Returns every analysis of that vetting. Required unless `id` is supplied. Returns `INVALID_ID` if malformed.
VettingId *string `form:"vetting_id,omitempty" json:"vetting_id,omitempty"`
}
CreatorVettingResultsParams defines parameters for CreatorVettingResults.
type CreatorVettingRun ¶
type CreatorVettingRun struct {
// Id Identifier of the analysis record.
Id string `json:"id"`
// Scope The subject this analysis covers: `CONTENT` or `COMMENT`.
Scope string `json:"scope"`
// Status Status of the analysis. One of `IN_PROGRESS`, `COMPLETED`, `EMPTY_RESULT` (finished with no matching content), or `FAILED`.
Status string `json:"status"`
}
CreatorVettingRun A lightweight analysis run that belongs to a vetting.
This representation omits the “result“. Retrieve it from `creator_vetting.results` once “status“ is “COMPLETED“.
type CreatorsListParams ¶
type CreatorsListParams struct {
// Email Creator email (exact match, case-insensitive).
Email *openapi_types.Email `form:"email,omitempty" json:"email,omitempty"`
// Id Creator id (from a previous creator response).
Id *string `form:"id,omitempty" json:"id,omitempty"`
// OrderBy **Sort direction is inverted:** `order_by=field` sorts descending and `order_by=-field` sorts ascending. Comma-separate to sort by multiple fields.
OrderBy *[]CreatorsListParamsOrderBy `form:"order_by,omitempty" json:"order_by,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
// Platform Platforms to include (comma-separated).
Platform *[]CreatorsListParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`
// Username Creator username substring (case-insensitive).
Username *string `form:"username,omitempty" json:"username,omitempty"`
}
CreatorsListParams defines parameters for CreatorsList.
type CreatorsListParamsOrderBy ¶
type CreatorsListParamsOrderBy string
CreatorsListParamsOrderBy defines parameters for CreatorsList.
const ( FollowerCount CreatorsListParamsOrderBy = "follower_count" Id CreatorsListParamsOrderBy = "id" MinusFollowerCount CreatorsListParamsOrderBy = "-follower_count" MinusId CreatorsListParamsOrderBy = "-id" )
Defines values for CreatorsListParamsOrderBy.
type CreatorsListParamsPlatform ¶
type CreatorsListParamsPlatform string
CreatorsListParamsPlatform defines parameters for CreatorsList.
const ( Instagram CreatorsListParamsPlatform = "instagram" Tiktok CreatorsListParamsPlatform = "tiktok" Youtube CreatorsListParamsPlatform = "youtube" )
Defines values for CreatorsListParamsPlatform.
type Detection ¶
type Detection struct {
// Context The input this detection was created with.
Context DetectionContext `json:"context"`
// CreatedAt Time the detection was created (UTC, ISO-8601).
CreatedAt time.Time `json:"created_at"`
// Id Identifier of the detection. Use this value on follow-up calls.
Id string `json:"id"`
// Result The placements document a finished detection produces.
Result DetectionResult `json:"result"`
// Status Where the detection has got to. One of `SCHEDULED`, `IN_PROGRESS`, `SUCCESS`, `FAILED`.
Status string `json:"status"`
// UpdatedAt Time the detection was most recently modified (UTC, ISO-8601).
UpdatedAt time.Time `json:"updated_at"`
}
Detection One brand placement detection run.
type DetectionBrandHint ¶
type DetectionBrandHint struct {
// Identifiers 2 to 10 words, logos and product names that count as evidence of this brand, the brand name included, each 2 to 200 characters. For example `['Nike', 'Jordan', 'Air Force 1']`.
Identifiers []string `json:"identifiers"`
// Name Display name of the brand, at most 60 characters. Every placement names it verbatim.
Name string `json:"name"`
// Negatives Up to 12 look-alikes that must not count, each at most 200 characters, for example `['Jordan (the country)']`.
Negatives *[]string `json:"negatives,omitempty"`
}
DetectionBrandHint One brand to look for, and what counts as evidence for it.
type DetectionBrandHintRequest ¶
type DetectionBrandHintRequest struct {
// Identifiers 2 to 10 words, logos and product names that count as evidence of this brand, the brand name included, each 2 to 200 characters. For example `['Nike', 'Jordan', 'Air Force 1']`.
Identifiers []string `json:"identifiers"`
// Name Display name of the brand, at most 60 characters. Every placement names it verbatim.
Name string `json:"name"`
// Negatives Up to 12 look-alikes that must not count, each at most 200 characters, for example `['Jordan (the country)']`.
Negatives *[]string `json:"negatives,omitempty"`
}
DetectionBrandHintRequest One brand to look for, and what counts as evidence for it.
type DetectionBrandResult ¶
type DetectionBrandResult struct {
// BrandName The requested brand, named exactly as it was asked for.
BrandName string `json:"brand_name"`
// Found Whether the brand was present at all.
Found bool `json:"found"`
// Placements Every placement for this brand, earliest first.
Placements []DetectionPlacement `json:"placements"`
// Summary Counts for this brand.
Summary DetectionBrandSummary `json:"summary"`
}
DetectionBrandResult Everything found for one requested brand.
type DetectionBrandSummary ¶
type DetectionBrandSummary struct {
// Confirmed Of those, confirmed.
Confirmed int `json:"confirmed"`
// Placements Placements for this brand.
Placements int `json:"placements"`
// Review Of those, left for review.
Review int `json:"review"`
}
DetectionBrandSummary Counts for one brand.
type DetectionContext ¶
type DetectionContext struct {
// ExternalUrl URL of the content being analysed. Read from the content this detection resolved to, falling back to the submitted `content_url` while that content is still being indexed.
ExternalUrl *string `json:"external_url,omitempty"`
// Hints The brands to detect and the evidence that counts for each.
Hints DetectionHints `json:"hints"`
}
DetectionContext The input the detection run was given, as stored.
type DetectionContextInputRequest ¶
type DetectionContextInputRequest struct {
// Hints The brands to detect and the evidence that counts for each.
Hints DetectionHintsRequest `json:"hints"`
}
DetectionContextInputRequest What the caller supplies as the detection's input.
type DetectionCreateFormdataRequestBody ¶
type DetectionCreateFormdataRequestBody = DetectionCreateRequest
DetectionCreateFormdataRequestBody defines body for DetectionCreate for application/x-www-form-urlencoded ContentType.
type DetectionCreateJSONRequestBody ¶
type DetectionCreateJSONRequestBody = DetectionCreateRequest
DetectionCreateJSONRequestBody defines body for DetectionCreate for application/json ContentType.
type DetectionCreateMultipartRequestBody ¶
type DetectionCreateMultipartRequestBody = DetectionCreateRequest
DetectionCreateMultipartRequestBody defines body for DetectionCreate for multipart/form-data ContentType.
type DetectionCreateRequest ¶
type DetectionCreateRequest struct {
// ContentId Identifier of content Zelf already holds, obtained from `content.list`. Supply this or `content_url`, not both.
ContentId *string `json:"content_id,omitempty"`
// ContentUrl Direct URL to the post or video to analyse. Content Zelf does not hold yet is indexed first. Supply this or `content_id`, not both.
ContentUrl *string `json:"content_url,omitempty"`
// Context The brands to detect and the evidence that counts for each.
Context DetectionContextInputRequest `json:"context"`
}
DetectionCreateRequest Request body for “POST /api/v1/detection/“.
type DetectionHints ¶
type DetectionHints struct {
// Brands 1 to 200 brands to detect, in the order the results report them.
Brands []DetectionBrandHint `json:"brands"`
}
DetectionHints What the detector is asked to look for.
type DetectionHintsRequest ¶
type DetectionHintsRequest struct {
// Brands 1 to 200 brands to detect, in the order the results report them.
Brands []DetectionBrandHintRequest `json:"brands"`
}
DetectionHintsRequest What the detector is asked to look for.
type DetectionListParams ¶
type DetectionListParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
DetectionListParams defines parameters for DetectionList.
type DetectionPlacement ¶
type DetectionPlacement struct {
// Confidence `confirmed`: passed a final check against the video's frames. `review`: detected but did not pass that final frame check. `Audio` placements are always `review`, because a spoken mention has no frames to check; they can be used as they are.
Confidence string `json:"confidence"`
// Modality How it was detected. One of `Visual`, `Audio`, `Text`.
Modality string `json:"modality"`
// Reasoning Why the observation counts as this brand.
Reasoning string `json:"reasoning"`
// Timestamp `mm:ss-mm:ss`, or `mm:ss` for a single moment. Past an hour the minutes keep counting (`69:23-69:25`).
Timestamp string `json:"timestamp"`
// VideoUrlAtTimestamp YouTube: opens the video 5 seconds before the placement. `null` on TikTok and Instagram.
VideoUrlAtTimestamp nullable.Nullable[string] `json:"video_url_at_timestamp"`
// WhatDetected What was observed, in the detector's own words.
WhatDetected string `json:"what_detected"`
}
DetectionPlacement One brand present in the content at one moment, with its evidence.
type DetectionResult ¶
type DetectionResult struct {
// Brands One entry per requested brand, in request order, including the brands that were not found.
Brands []DetectionBrandResult `json:"brands"`
// Summary Counts across the whole run.
Summary DetectionSummary `json:"summary"`
// Video The content that was analysed.
Video DetectionVideo `json:"video"`
}
DetectionResult The placements document a finished detection produces.
type DetectionSummary ¶
type DetectionSummary struct {
// BrandsFound How many of those brands were present.
BrandsFound int `json:"brands_found"`
// BrandsRequested How many brands the rubric asked for.
BrandsRequested int `json:"brands_requested"`
// Confirmed Placements that passed the final frame check.
Confirmed int `json:"confirmed"`
// Placements Total placements reported.
Placements int `json:"placements"`
// Review Placements that did not pass the final frame check, including every `Audio` placement.
Review int `json:"review"`
}
DetectionSummary Counts across the whole run.
type DetectionVideo ¶
type DetectionVideo struct {
// DurationS Length of the content in seconds.
DurationS float64 `json:"duration_s"`
// Platform Platform the content was posted on.
Platform string `json:"platform"`
// VideoUrl URL of the analysed content.
VideoUrl string `json:"video_url"`
}
DetectionVideo The content the placements were found in.
type Error400 ¶
type Error400 struct {
Error struct {
Code Error400ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error400 defines model for Error400.
type Error400ErrorCode ¶
type Error400ErrorCode string
Error400ErrorCode defines model for Error400.Error.Code.
const ( BRANDIDREQUIRED Error400ErrorCode = "BRAND_ID_REQUIRED" INVALIDID Error400ErrorCode = "INVALID_ID" VALIDATIONERROR Error400ErrorCode = "VALIDATION_ERROR" )
Defines values for Error400ErrorCode.
type Error401 ¶
type Error401 struct {
Error struct {
Code Error401ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error401 defines model for Error401.
type Error401ErrorCode ¶
type Error401ErrorCode string
Error401ErrorCode defines model for Error401.Error.Code.
const ( EXPIREDAPIKEY Error401ErrorCode = "EXPIRED_API_KEY" INVALIDAPIKEY Error401ErrorCode = "INVALID_API_KEY" REVOKEDAPIKEY Error401ErrorCode = "REVOKED_API_KEY" )
Defines values for Error401ErrorCode.
type Error403 ¶
type Error403 struct {
Error struct {
Code Error403ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error403 defines model for Error403.
type Error403ErrorCode ¶
type Error403ErrorCode string
Error403ErrorCode defines model for Error403.Error.Code.
const (
PERMISSIONDENIED Error403ErrorCode = "PERMISSION_DENIED"
)
Defines values for Error403ErrorCode.
type Error404 ¶
type Error404 struct {
Error struct {
Code Error404ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error404 defines model for Error404.
type Error404ErrorCode ¶
type Error404ErrorCode string
Error404ErrorCode defines model for Error404.Error.Code.
const (
NOTFOUND Error404ErrorCode = "NOT_FOUND"
)
Defines values for Error404ErrorCode.
type Error406 ¶
type Error406 struct {
Error struct {
Code Error406ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error406 defines model for Error406.
type Error406ErrorCode ¶
type Error406ErrorCode string
Error406ErrorCode defines model for Error406.Error.Code.
const (
NOTACCEPTABLE Error406ErrorCode = "NOT_ACCEPTABLE"
)
Defines values for Error406ErrorCode.
type Error429 ¶
type Error429 struct {
Error struct {
Code Error429ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error429 defines model for Error429.
type Error429ErrorCode ¶
type Error429ErrorCode string
Error429ErrorCode defines model for Error429.Error.Code.
const (
RATELIMITEXCEEDED Error429ErrorCode = "RATE_LIMIT_EXCEEDED"
)
Defines values for Error429ErrorCode.
type Error500 ¶
type Error500 struct {
Error struct {
Code Error500ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error500 defines model for Error500.
type Error500ErrorCode ¶
type Error500ErrorCode string
Error500ErrorCode defines model for Error500.Error.Code.
const (
INTERNALERROR Error500ErrorCode = "INTERNAL_ERROR"
)
Defines values for Error500ErrorCode.
type Error503 ¶
type Error503 struct {
Error struct {
Code Error503ErrorCode `json:"code"`
Details map[string]interface{} `json:"details"`
Message string `json:"message"`
} `json:"error"`
LogId string `json:"log_id"`
Timestamp time.Time `json:"timestamp"`
}
Error503 defines model for Error503.
type Error503ErrorCode ¶
type Error503ErrorCode string
Error503ErrorCode defines model for Error503.Error.Code.
const (
SERVICEUNAVAILABLE Error503ErrorCode = "SERVICE_UNAVAILABLE"
)
Defines values for Error503ErrorCode.
type FollowerAccount ¶ added in v1.1.0
type FollowerAccount struct {
// Followers Follower count for this handle.
Followers int `json:"followers"`
// Platform The platform the handle is on.
Platform string `json:"platform"`
// Username The handle.
Username string `json:"username"`
}
FollowerAccount One owned handle and the followers it carries.
type FollowerPeriod ¶ added in v1.1.0
type FollowerPeriod struct {
// Accounts Per handle counts that add up to `followers`.
Accounts []FollowerAccount `json:"accounts"`
// EndDate Last day of the period.
EndDate openapi_types.Date `json:"end_date"`
// Followers Followers across every owned handle.
Followers int `json:"followers"`
// StartDate First day of the period.
StartDate openapi_types.Date `json:"start_date"`
}
FollowerPeriod Followers at the end of one period.
type FollowerTimeseries ¶ added in v1.1.0
type FollowerTimeseries struct {
// Brand The brand this row covers.
Brand AnalyticsBrand `json:"brand"`
// Periods One entry per period, oldest first.
Periods []FollowerPeriod `json:"periods"`
}
FollowerTimeseries One brand's follower history.
type IntervalHoursEnum ¶
type IntervalHoursEnum int
IntervalHoursEnum defines model for IntervalHoursEnum.
const ( N12 IntervalHoursEnum = 12 N168 IntervalHoursEnum = 168 N24 IntervalHoursEnum = 24 N720 IntervalHoursEnum = 720 )
Defines values for IntervalHoursEnum.
type LastStatusEnum ¶
type LastStatusEnum string
LastStatusEnum defines model for LastStatusEnum.
const ( LastStatusEnumFAILED LastStatusEnum = "FAILED" LastStatusEnumSUCCESS LastStatusEnum = "SUCCESS" )
Defines values for LastStatusEnum.
type MentionTypeEnum ¶
type MentionTypeEnum string
MentionTypeEnum defines model for MentionTypeEnum.
const ( MentionTypeEnumComment MentionTypeEnum = "comment" MentionTypeEnumContent MentionTypeEnum = "content" )
Defines values for MentionTypeEnum.
type PaginatedAiAnalysisList ¶
type PaginatedAiAnalysisList = []AiAnalysis
PaginatedAiAnalysisList Paginated response envelope. `results` holds this page of `AiAnalysis` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedAiAnalysisResultList ¶
type PaginatedAiAnalysisResultList = []AiAnalysisResult
PaginatedAiAnalysisResultList Paginated response envelope. `results` holds this page of `AiAnalysisResult` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedBrandCatalogList ¶
type PaginatedBrandCatalogList = []BrandCatalog
PaginatedBrandCatalogList Paginated response envelope. `results` holds this page of `BrandCatalog` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedBrandList ¶
type PaginatedBrandList = []Brand
PaginatedBrandList Paginated response envelope. `results` holds this page of `Brand` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedCommentList ¶
type PaginatedCommentList = []Comment
PaginatedCommentList Paginated response envelope. `results` holds this page of `Comment` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedContentList ¶
type PaginatedContentList = []Content
PaginatedContentList Paginated response envelope. `results` holds this page of `Content` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedCreatorList ¶
type PaginatedCreatorList = []Creator
PaginatedCreatorList Paginated response envelope. `results` holds this page of `Creator` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedCreatorSyncList ¶
type PaginatedCreatorSyncList = []CreatorSync
PaginatedCreatorSyncList Paginated response envelope. `results` holds this page of `CreatorSync` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedCreatorVettingList ¶
type PaginatedCreatorVettingList = []CreatorVetting
PaginatedCreatorVettingList Paginated response envelope. `results` holds this page of `CreatorVetting` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedCreatorVettingResultList ¶
type PaginatedCreatorVettingResultList = []CreatorVettingResult
PaginatedCreatorVettingResultList Paginated response envelope. `results` holds this page of `CreatorVettingResult` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedDetectionList ¶
type PaginatedDetectionList = []Detection
PaginatedDetectionList Paginated response envelope. `results` holds this page of `Detection` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedWebhookDeliveryList ¶
type PaginatedWebhookDeliveryList = []WebhookDelivery
PaginatedWebhookDeliveryList Paginated response envelope. `results` holds this page of `WebhookDelivery` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedWebhookSecretList ¶
type PaginatedWebhookSecretList = []WebhookSecret
PaginatedWebhookSecretList Paginated response envelope. `results` holds this page of `WebhookSecret` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PaginatedWebhookSubscriptionList ¶
type PaginatedWebhookSubscriptionList = []WebhookSubscription
PaginatedWebhookSubscriptionList Paginated response envelope. `results` holds this page of `WebhookSubscription` objects; the envelope fields (`log_id`, `timestamp`, `item_count`, `page`, `next`, `previous`) are described under Response shape.
type PatchedBrandUpdateRequest ¶
type PatchedBrandUpdateRequest struct {
// AllowedLanguages ISO 639-1 codes to track, or the single value `all`. An empty array means all languages are tracked. A code outside ISO 639-1 is rejected, because a brand tracking it would match no content.
AllowedLanguages *[]string `json:"allowed_languages,omitempty"`
// BooleanQuery Full-text search across the caption, transcript, summary, and hashtags.
//
// **Syntax**
// - Multiple words are combined with AND: `nike running` matches content containing both `nike` and `running`.
// - `OR` (case-insensitive) matches either side: `nike OR adidas`.
// - `NOT` (case-insensitive) excludes a term: `running NOT marathon` matches `running` but not `marathon`.
// - Wrap a phrase in double quotes to match the words in order: `"summer collection"`.
// - Negate a phrase with `NOT`: `NOT "out of stock"`.
// - Group with parentheses to combine operators: `(nike OR adidas) running`.
// - `ONEAR/n` (case-insensitive) matches terms within `n` words of each other, in order: `apple ONEAR/2 watch` matches `apple watch` and `apple smart watch`, but not `watch ... apple`. It binds more tightly than `AND` and `OR`, so `apple ONEAR/2 watch AND cheap` is interpreted as `(apple near watch) AND cheap`.
//
// **Examples**
// - `nike running` - contains both terms.
// - `nike OR adidas` - contains either brand.
// - `"summer sale" NOT clearance` - the exact phrase, without `clearance`.
// - `(running OR cycling) NOT "beginner guide"` - either sport, excluding the phrase.
// - `apple ONEAR/2 watch` - `apple` within two words before `watch`.
//
// Content matching this query is connected to (associated with) this brand.
BooleanQuery nullable.Nullable[string] `json:"boolean_query,omitempty"`
// BrandId Brand to update, specified as an `id` from `brands.list`. Omit to update the workspace brand.
BrandId *string `json:"brand_id,omitempty"`
// CompoundInclusionTerms Secondary inclusion terms layered on top of `inclusion_terms`.
CompoundInclusionTerms *[]string `json:"compound_inclusion_terms,omitempty"`
// ExclusionTerms Terms that disqualify content from matching.
ExclusionTerms *[]string `json:"exclusion_terms,omitempty"`
// InclusionTerms Terms that must be present for content to match.
InclusionTerms *[]string `json:"inclusion_terms,omitempty"`
// InfluencerTerms Terms that mark matched content as influencer content.
InfluencerTerms *[]string `json:"influencer_terms,omitempty"`
// SearchTerms Plain keywords the brand monitors across platforms, matched as-is (case-insensitive, no operators).
SearchTerms *[]string `json:"search_terms,omitempty"`
}
PatchedBrandUpdateRequest Partial update for a brand's monitoring keywords.
Every field is optional, and only the supplied fields are changed, but at least one field is required.
type PatchedWebhookSubscriptionUpdateRequest ¶
type PatchedWebhookSubscriptionUpdateRequest struct {
// CustomHeaders Extra HTTP headers sent with each webhook request.
CustomHeaders interface{} `json:"custom_headers,omitempty"`
// Enabled Whether this subscription is active and will be dispatched.
Enabled *bool `json:"enabled,omitempty"`
// IntervalHours Hours between snapshot deliveries. Allowed values: 12, 24, 168, 720. The first snapshot is sent within minutes of the subscription being saved, not after a full interval has passed.
IntervalHours *PatchedWebhookSubscriptionUpdateRequest_IntervalHours `json:"interval_hours,omitempty"`
// MaxItems Maximum number of items per delivery.
MaxItems nullable.Nullable[int] `json:"max_items,omitempty"`
// ResourceFilters Filters that scope which resources are delivered.
ResourceFilters interface{} `json:"resource_filters,omitempty"`
// Url Destination URL where webhook payloads are sent.
Url *string `json:"url,omitempty"`
}
PatchedWebhookSubscriptionUpdateRequest defines model for PatchedWebhookSubscriptionUpdateRequest.
type PatchedWebhookSubscriptionUpdateRequest_IntervalHours ¶
type PatchedWebhookSubscriptionUpdateRequest_IntervalHours struct {
// contains filtered or unexported fields
}
PatchedWebhookSubscriptionUpdateRequest_IntervalHours Hours between snapshot deliveries. Allowed values: 12, 24, 168, 720. The first snapshot is sent within minutes of the subscription being saved, not after a full interval has passed.
func (PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsIntervalHoursEnum ¶
func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsIntervalHoursEnum() (IntervalHoursEnum, error)
AsIntervalHoursEnum returns the union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours as a IntervalHoursEnum
func (PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsNullEnum ¶
func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) AsNullEnum() (NullEnum, error)
AsNullEnum returns the union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours as a NullEnum
func (*PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromIntervalHoursEnum ¶
func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromIntervalHoursEnum(v IntervalHoursEnum) error
FromIntervalHoursEnum overwrites any union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours as the provided IntervalHoursEnum
func (*PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromNullEnum ¶
func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) FromNullEnum(v NullEnum) error
FromNullEnum overwrites any union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours as the provided NullEnum
func (PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MarshalJSON ¶
func (t PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MarshalJSON() ([]byte, error)
func (*PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeIntervalHoursEnum ¶
func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeIntervalHoursEnum(v IntervalHoursEnum) error
MergeIntervalHoursEnum performs a merge with any union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours, using the provided IntervalHoursEnum
func (*PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeNullEnum ¶
func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) MergeNullEnum(v NullEnum) error
MergeNullEnum performs a merge with any union data inside the PatchedWebhookSubscriptionUpdateRequest_IntervalHours, using the provided NullEnum
func (*PatchedWebhookSubscriptionUpdateRequest_IntervalHours) UnmarshalJSON ¶
func (t *PatchedWebhookSubscriptionUpdateRequest_IntervalHours) UnmarshalJSON(b []byte) error
type PlatformEnum ¶
type PlatformEnum string
PlatformEnum defines model for PlatformEnum.
const ( PlatformEnumInstagram PlatformEnum = "instagram" PlatformEnumTiktok PlatformEnum = "tiktok" PlatformEnumYoutube PlatformEnum = "youtube" )
Defines values for PlatformEnum.
type PostedCommentCategory ¶ added in v1.1.0
type PostedCommentCategory struct {
// Category `brand`, `owned`, `competitors`, `themes` or `other`. `other` covers content outside the brand's own tree.
Category string `json:"category"`
// Comments Comments posted on this category.
Comments int `json:"comments"`
// Likes Likes those comments received.
Likes int `json:"likes"`
// Replies Replies those comments received.
Replies int `json:"replies"`
}
PostedCommentCategory Comments the brand posted on one category of content.
type PostedComments ¶ added in v1.1.0
type PostedComments struct {
// Categories One entry per category. They add up to `total_comments_posted`.
Categories []PostedCommentCategory `json:"categories"`
// TotalCommentsPosted Comments the brand posted in the window, across every category.
TotalCommentsPosted int `json:"total_comments_posted"`
}
PostedComments Comments the brand posted, split by the content they were posted on.
type ResourceEnum ¶
type ResourceEnum string
ResourceEnum defines model for ResourceEnum.
const ( ResourceEnumContent ResourceEnum = "content" ResourceEnumCreator ResourceEnum = "creator" )
Defines values for ResourceEnum.
type ResultFile ¶
type ResultFile struct {
// DownloadUrl Signed URL to request the JSON payload. Expires at `expires_at`.
DownloadUrl string `json:"download_url"`
// ExpiresAt Unix epoch seconds after which `download_url` expires. Re-fetch the run to obtain a fresh URL.
ExpiresAt int `json:"expires_at"`
// Format Payload encoding. Always `json`.
Format string `json:"format"`
}
ResultFile Signed, time-limited download of an analysis run's result payload.
type SafetyCheckRequest ¶
type SafetyCheckRequest struct {
// Extra Label for `USER_DEFINED_SAFETY_CRITERION`, stored as the criterion's `value`. Ignored for predefined types.
Extra nullable.Nullable[string] `json:"extra,omitempty"`
// Type Category of the safety criterion. One of `USER_DEFINED_SAFETY_CRITERION`, `ADULT_CONTENT`, `ARMS_AND_AMMUNITION`, `MISINFORMATION`, `PROFANITY`, `POLITICS`, `DISCLOSURE`.
//
// `DISCLOSURE` looks for explicit sponsorship disclosures (for example `#ad`, a paid partnership, an affiliate commission or a gifted product) in each video's on-screen text, speech transcription, title and caption. It is not scored as a violation: findings are listed per video under `insight_json.disclosures` in the result payload.
Type TypeEnum `json:"type"`
}
SafetyCheckRequest A single safety criterion the AI pipeline evaluates against the creator.
Only “type“ is required. The “extra“ field supplies the label for the “USER_DEFINED_SAFETY_CRITERION“ type and is ignored for the predefined types.
type SecretTypeEnum ¶
type SecretTypeEnum string
SecretTypeEnum defines model for SecretTypeEnum.
const ( Default SecretTypeEnum = "default" New SecretTypeEnum = "new" )
Defines values for SecretTypeEnum.
type SubBrandTypeEnum ¶
type SubBrandTypeEnum string
SubBrandTypeEnum defines model for SubBrandTypeEnum.
const ( COMPETITIVE SubBrandTypeEnum = "COMPETITIVE" THEME SubBrandTypeEnum = "THEME" )
Defines values for SubBrandTypeEnum.
type SubBrandsCreateFormdataRequestBody ¶
type SubBrandsCreateFormdataRequestBody = BrandCreateSubBrandRequest
SubBrandsCreateFormdataRequestBody defines body for SubBrandsCreate for application/x-www-form-urlencoded ContentType.
type SubBrandsCreateJSONRequestBody ¶
type SubBrandsCreateJSONRequestBody = BrandCreateSubBrandRequest
SubBrandsCreateJSONRequestBody defines body for SubBrandsCreate for application/json ContentType.
type SubBrandsCreateMultipartRequestBody ¶
type SubBrandsCreateMultipartRequestBody = BrandCreateSubBrandRequest
SubBrandsCreateMultipartRequestBody defines body for SubBrandsCreate for multipart/form-data ContentType.
type TypeEnum ¶
type TypeEnum string
TypeEnum defines model for TypeEnum.
const ( ADULTCONTENT TypeEnum = "ADULT_CONTENT" ARMSANDAMMUNITION TypeEnum = "ARMS_AND_AMMUNITION" DISCLOSURE TypeEnum = "DISCLOSURE" MISINFORMATION TypeEnum = "MISINFORMATION" POLITICS TypeEnum = "POLITICS" PROFANITY TypeEnum = "PROFANITY" USERDEFINEDSAFETYCRITERION TypeEnum = "USER_DEFINED_SAFETY_CRITERION" )
Defines values for TypeEnum.
type Usage ¶
type Usage struct {
// AuthenticatedAs “api_key“ or “mcp“, whichever made this call. It decides which groups your calls are counted against.
AuthenticatedAs string `json:"authenticated_as"`
// BrandId Brand these figures belong to.
BrandId string `json:"brand_id"`
// History What was actually spent, day by day, from the usage ledger.
History UsageHistory `json:"history"`
// Scopes One entry per metered group. Both sections are returned whichever way you call.
Scopes []UsageScope `json:"scopes"`
}
Usage Live consumption for the brand behind the current credentials.
type UsageDay ¶ added in v1.1.0
type UsageDay struct {
// AiAnalysis Calls counted against the AI analysis group.
AiAnalysis int `json:"ai_analysis"`
// CreatorVetting Calls counted against creator vetting.
CreatorVetting int `json:"creator_vetting"`
// DataRecords Calls counted against data records.
DataRecords int `json:"data_records"`
// DataRecordsItems Records those calls returned.
DataRecordsItems int `json:"data_records_items"`
// Date The day, in the brand's billing timezone.
Date openapi_types.Date `json:"date"`
// General Every counted call that day.
General int `json:"general"`
// Source “api“ for direct requests, “mcp“ for AI clients.
Source string `json:"source"`
}
UsageDay One day of consumption for one source.
type UsageHistory ¶ added in v1.1.0
type UsageHistory struct {
// Days One entry per day and source that saw usage, oldest first.
Days []UsageDay `json:"days"`
// EndDate Last day covered.
EndDate openapi_types.Date `json:"end_date"`
// StartDate First day covered.
StartDate openapi_types.Date `json:"start_date"`
}
UsageHistory Daily consumption over the window the ledger keeps.
type UsageScope ¶
type UsageScope struct {
// HumanName Name of the group, as an admin sees it.
HumanName string `json:"human_name"`
// Kind “request“ counts calls; “item“ counts rows returned.
Kind string `json:"kind"`
// Scope Identifier of the metered group.
Scope string `json:"scope"`
// Section Which product the group meters: “api“ for direct requests, “mcp“ for AI clients. The two never share a counter.
Section string `json:"section"`
// Windows Every window that has a limit configured.
Windows []UsageWindow `json:"windows"`
}
UsageScope One metered group, with every window that has a limit.
type UsageWindow ¶
type UsageWindow struct {
// Limit Most that may be spent in this window.
Limit int `json:"limit"`
// Remaining Still available in this window.
Remaining int `json:"remaining"`
// ResetIn Seconds until the window resets. The window starts on its first request rather than on the clock, so this is what is left of it.
ResetIn int `json:"reset_in"`
// Used Spent so far in this window.
Used int `json:"used"`
// Window Which window this is: rps, rpm, rph, rpd, rpmonth, or an item window.
Window string `json:"window"`
}
UsageWindow Consumption of one window, e.g. requests in the current hour.
type WebhookAvailableEvent ¶
type WebhookAvailableEvent struct {
// Description What triggers the event and what the payload holds.
Description string `json:"description"`
// Event Event type identifier, e.g. creator_vetting.completed.
Event string `json:"event"`
// Group Human-readable grouping label.
Group string `json:"group"`
}
WebhookAvailableEvent An event type a subscription may ask for.
type WebhookData ¶
type WebhookData struct {
// Files Manifest mode only. The downloadable snapshot files; retrieve each `download_url` and stream the NDJSON rows. Absent in `inline` mode.
Files *[]WebhookFile `json:"files,omitempty"`
// ItemCount Total number of rows in this delivery, summed across `files` or equal to the length of `items`.
ItemCount int `json:"item_count"`
// Items Inline mode only. The delivered rows themselves, in the same shape returned by the matching REST endpoint. Absent in `manifest` mode.
Items *[]interface{} `json:"items,omitempty"`
// Statistics Aggregate totals over the snapshot, including post count, views, engagement, earned media value, and unique creators. Present only on `content.snapshot`; absent for creator and event pushes.
Statistics interface{} `json:"statistics,omitempty"`
}
WebhookData The carried content of a push. The populated key depends on `delivery_mode`.
`manifest` deliveries populate `files` (downloadable snapshot files) and, for the content resource, `statistics`. `inline` deliveries populate `items` (the rows directly). The unused key is omitted.
type WebhookDeleteAcknowledgement ¶
type WebhookDeleteAcknowledgement struct {
// Acknowledged Always true; confirms the webhook resource delete was acknowledged.
Acknowledged bool `json:"acknowledged"`
// Action Action that was performed. Always 'delete'.
Action string `json:"action"`
// Status Completion status of the action. Always 'complete'.
Status string `json:"status"`
}
WebhookDeleteAcknowledgement Confirmation that a webhook resource was deleted.
type WebhookDelivery ¶
type WebhookDelivery struct {
// AttemptCount Number of delivery attempts made so far.
AttemptCount int `json:"attempt_count"`
// Created Timestamp set once when the row is first created.
Created time.Time `json:"created"`
// FinishedAt When the delivery finished (succeeded or exhausted).
FinishedAt nullable.Nullable[time.Time] `json:"finished_at"`
// Id Encoded identifier of the webhook delivery.
Id string `json:"id"`
// ItemCount Number of items included in the delivered payload.
ItemCount nullable.Nullable[int] `json:"item_count"`
// LastError Error message from the most recent failed attempt.
LastError string `json:"last_error"`
// LastStatusCode HTTP status code returned by the most recent attempt.
LastStatusCode nullable.Nullable[int] `json:"last_status_code"`
// Modified Timestamp updated automatically on every save.
Modified time.Time `json:"modified"`
// ResponseExcerpt Excerpt of the response body returned by the endpoint.
ResponseExcerpt string `json:"response_excerpt"`
// ScheduledAt When this delivery is scheduled to be sent.
ScheduledAt time.Time `json:"scheduled_at"`
// Sha256 SHA-256 checksum of the delivered payload.
Sha256 string `json:"sha256"`
// SizeBytes Size of the delivered payload in bytes.
SizeBytes nullable.Nullable[int] `json:"size_bytes"`
// State Current state of the delivery.
State StateEnum `json:"state"`
// Subscription Encoded identifier of the parent subscription.
Subscription string `json:"subscription"`
}
WebhookDelivery One attempt to deliver one push, with its outcome.
type WebhookFile ¶
type WebhookFile struct {
// DownloadUrl Signed, time-limited URL from which to retrieve the file. Expires at `expires_at`.
DownloadUrl string `json:"download_url"`
// ExpiresAt Unix epoch seconds after which `download_url` stops working. Fetch the file before this time.
ExpiresAt int `json:"expires_at"`
// Format File encoding. Always `ndjson` (newline-delimited JSON, with one row per line).
Format string `json:"format"`
// ItemCount Number of rows in this file.
ItemCount int `json:"item_count"`
// Sha256 Hex SHA-256 of the file body. Use it to verify the download.
Sha256 string `json:"sha256"`
// SizeBytes Size of the file in bytes.
SizeBytes int `json:"size_bytes"`
}
WebhookFile One downloadable snapshot file in a manifest push.
`files` is an array, so read every entry rather than assuming one.
type WebhookPush ¶
type WebhookPush struct {
// Data The push payload. See `delivery_mode` for which key inside is populated.
Data WebhookData `json:"data"`
// DeliveredAt Unix epoch seconds at which ZelfAI sent this push.
DeliveredAt int `json:"delivered_at"`
// DeliveryMode `manifest`: `data.files` holds downloadable snapshot files. `inline`: `data.items` holds the rows directly.
DeliveryMode WebhookPushDeliveryMode `json:"delivery_mode"`
// Id Unique id of this delivery attempt, stable across retries of the same push.
Id string `json:"id"`
// Livemode `true` for production data; `false` for test deliveries.
Livemode bool `json:"livemode"`
// Resource Resource the push covers (`content` or `creator`) for snapshots; `null` for event pushes.
Resource nullable.Nullable[string] `json:"resource,omitempty"`
// ResourceFilters The subscription's stored filters that scoped this snapshot, using the same query params as the matching list operation (`content.list` or `creators.list`). Empty for event pushes.
ResourceFilters interface{} `json:"resource_filters"`
// SubscriptionId Id of the subscription that produced this push.
SubscriptionId string `json:"subscription_id"`
// Type Event type. `<resource>.snapshot` for scheduled snapshots (`content.snapshot`, `creator.snapshot`), or the event name for event pushes (`creator_vetting.completed`).
Type string `json:"type"`
}
WebhookPush The outer payload ZelfAI POSTs to receivers, uniform across all pushes.
Top-level fields are delivery metadata and remain identical across modes. `data` carries the content; which key inside it is populated (`files` or `items`) is determined by `delivery_mode`. `manifest` deliveries use `data.files`, while `inline` event pushes use `data.items`.
type WebhookPushDeliveryMode ¶
type WebhookPushDeliveryMode string
WebhookPushDeliveryMode `manifest`: `data.files` holds downloadable snapshot files. `inline`: `data.items` holds the rows directly.
const ( Inline WebhookPushDeliveryMode = "inline" Manifest WebhookPushDeliveryMode = "manifest" )
Defines values for WebhookPushDeliveryMode.
type WebhookSecret ¶
type WebhookSecret struct {
// Created Timestamp set once when the row is first created.
Created time.Time `json:"created"`
// Id Encoded identifier of the webhook secret.
Id string `json:"id"`
// IsActive Whether this secret is currently active.
IsActive bool `json:"is_active"`
// IsDefault Whether this is the default secret for the brand and kind.
IsDefault bool `json:"is_default"`
// Kind Type of webhook this secret applies to.
Kind KindEnum `json:"kind"`
// Modified Timestamp updated automatically on every save.
Modified time.Time `json:"modified"`
// SecretPrefix Non-sensitive prefix of the secret, shown for identification.
SecretPrefix string `json:"secret_prefix"`
}
WebhookSecret A signing secret, identified by its prefix rather than its value.
type WebhookSecretCreateRequest ¶
type WebhookSecretCreateRequest struct {
// Kind Whether the secret is for snapshot or event webhooks.
Kind *KindEnum `json:"kind,omitempty"`
// MakeDefault Set this secret as the default for its kind.
MakeDefault *bool `json:"make_default,omitempty"`
}
WebhookSecretCreateRequest defines model for WebhookSecretCreateRequest.
type WebhookSecretCreated ¶
type WebhookSecretCreated struct {
// Created Timestamp set once when the row is first created.
Created time.Time `json:"created"`
// Id Encoded identifier of the webhook secret.
Id string `json:"id"`
// IsActive Whether this secret is currently active.
IsActive bool `json:"is_active"`
// IsDefault Whether this is the default secret for the brand and kind.
IsDefault bool `json:"is_default"`
// Kind Type of webhook this secret applies to.
Kind KindEnum `json:"kind"`
// Modified Timestamp updated automatically on every save.
Modified time.Time `json:"modified"`
// Secret Full signing secret, returned only once on creation.
Secret string `json:"secret"`
// SecretPrefix Non-sensitive prefix of the secret, shown for identification.
SecretPrefix string `json:"secret_prefix"`
}
WebhookSecretCreated A secret just created or rotated, carrying the value once.
Store it now: later reads return the prefix alone.
type WebhookSubscription ¶
type WebhookSubscription struct {
// Created Timestamp set once when the row is first created.
Created time.Time `json:"created"`
// CustomHeaders Custom HTTP headers to include with each delivery.
CustomHeaders interface{} `json:"custom_headers"`
// Enabled Whether this subscription is active and will be dispatched.
Enabled bool `json:"enabled"`
// EventTypes Event types the subscription listens for.
EventTypes []string `json:"event_types"`
// Id Encoded identifier of the webhook subscription.
Id string `json:"id"`
// IntervalHours Hours between snapshot deliveries.
IntervalHours nullable.Nullable[int] `json:"interval_hours"`
// Kind Type of webhook this subscription delivers.
Kind KindEnum `json:"kind"`
// LastRunAt When this subscription last dispatched a delivery.
LastRunAt nullable.Nullable[time.Time] `json:"last_run_at"`
// LastStatus Outcome status of the most recent delivery. Empty until the subscription has dispatched for the first time.
LastStatus WebhookSubscription_LastStatus `json:"last_status"`
// MaxItems Max rows a real snapshot delivers. Null or 0 falls back to the default item limit.
MaxItems nullable.Nullable[int] `json:"max_items"`
// Modified Timestamp updated automatically on every save.
Modified time.Time `json:"modified"`
// Resource Resource type the subscription is for (content or creator).
Resource WebhookSubscription_Resource `json:"resource"`
// ResourceFilters Filters applied to select which resources are delivered.
ResourceFilters interface{} `json:"resource_filters"`
// SecretPrefix Public prefix of the subscription signing secret.
SecretPrefix string `json:"secret_prefix"`
// Url Destination URL where webhook payloads are sent.
Url string `json:"url"`
}
WebhookSubscription A registered endpoint and the events it receives.
type WebhookSubscriptionCreateRequest ¶
type WebhookSubscriptionCreateRequest struct {
// CustomHeaders Extra HTTP headers sent with each webhook request.
CustomHeaders interface{} `json:"custom_headers,omitempty"`
// EventTypes Event names the subscription listens for.
EventTypes *[]string `json:"event_types,omitempty"`
// IntervalHours Hours between snapshot deliveries. Allowed values: 12, 24, 168, 720. The first snapshot is sent within minutes of the subscription being saved, not after a full interval has passed.
IntervalHours *WebhookSubscriptionCreateRequest_IntervalHours `json:"interval_hours,omitempty"`
// Kind Whether the subscription is snapshot or event based.
Kind *KindEnum `json:"kind,omitempty"`
// MaxItems Maximum number of items per delivery.
MaxItems nullable.Nullable[int] `json:"max_items,omitempty"`
// Resource Resource type for snapshot subscriptions.
Resource *WebhookSubscriptionCreateRequest_Resource `json:"resource,omitempty"`
// ResourceFilters Filters that scope which resources are delivered.
ResourceFilters interface{} `json:"resource_filters,omitempty"`
// SecretType Type of signing secret to attach to the subscription.
SecretType *SecretTypeEnum `json:"secret_type,omitempty"`
// Url Destination URL where webhook payloads are sent.
Url string `json:"url"`
}
WebhookSubscriptionCreateRequest defines model for WebhookSubscriptionCreateRequest.
type WebhookSubscriptionCreateRequest_IntervalHours ¶
type WebhookSubscriptionCreateRequest_IntervalHours struct {
// contains filtered or unexported fields
}
WebhookSubscriptionCreateRequest_IntervalHours Hours between snapshot deliveries. Allowed values: 12, 24, 168, 720. The first snapshot is sent within minutes of the subscription being saved, not after a full interval has passed.
func (WebhookSubscriptionCreateRequest_IntervalHours) AsIntervalHoursEnum ¶
func (t WebhookSubscriptionCreateRequest_IntervalHours) AsIntervalHoursEnum() (IntervalHoursEnum, error)
AsIntervalHoursEnum returns the union data inside the WebhookSubscriptionCreateRequest_IntervalHours as a IntervalHoursEnum
func (WebhookSubscriptionCreateRequest_IntervalHours) AsNullEnum ¶
func (t WebhookSubscriptionCreateRequest_IntervalHours) AsNullEnum() (NullEnum, error)
AsNullEnum returns the union data inside the WebhookSubscriptionCreateRequest_IntervalHours as a NullEnum
func (*WebhookSubscriptionCreateRequest_IntervalHours) FromIntervalHoursEnum ¶
func (t *WebhookSubscriptionCreateRequest_IntervalHours) FromIntervalHoursEnum(v IntervalHoursEnum) error
FromIntervalHoursEnum overwrites any union data inside the WebhookSubscriptionCreateRequest_IntervalHours as the provided IntervalHoursEnum
func (*WebhookSubscriptionCreateRequest_IntervalHours) FromNullEnum ¶
func (t *WebhookSubscriptionCreateRequest_IntervalHours) FromNullEnum(v NullEnum) error
FromNullEnum overwrites any union data inside the WebhookSubscriptionCreateRequest_IntervalHours as the provided NullEnum
func (WebhookSubscriptionCreateRequest_IntervalHours) MarshalJSON ¶
func (t WebhookSubscriptionCreateRequest_IntervalHours) MarshalJSON() ([]byte, error)
func (*WebhookSubscriptionCreateRequest_IntervalHours) MergeIntervalHoursEnum ¶
func (t *WebhookSubscriptionCreateRequest_IntervalHours) MergeIntervalHoursEnum(v IntervalHoursEnum) error
MergeIntervalHoursEnum performs a merge with any union data inside the WebhookSubscriptionCreateRequest_IntervalHours, using the provided IntervalHoursEnum
func (*WebhookSubscriptionCreateRequest_IntervalHours) MergeNullEnum ¶
func (t *WebhookSubscriptionCreateRequest_IntervalHours) MergeNullEnum(v NullEnum) error
MergeNullEnum performs a merge with any union data inside the WebhookSubscriptionCreateRequest_IntervalHours, using the provided NullEnum
func (*WebhookSubscriptionCreateRequest_IntervalHours) UnmarshalJSON ¶
func (t *WebhookSubscriptionCreateRequest_IntervalHours) UnmarshalJSON(b []byte) error
type WebhookSubscriptionCreateRequest_Resource ¶
type WebhookSubscriptionCreateRequest_Resource struct {
// contains filtered or unexported fields
}
WebhookSubscriptionCreateRequest_Resource Resource type for snapshot subscriptions.
func (WebhookSubscriptionCreateRequest_Resource) AsNullEnum ¶
func (t WebhookSubscriptionCreateRequest_Resource) AsNullEnum() (NullEnum, error)
AsNullEnum returns the union data inside the WebhookSubscriptionCreateRequest_Resource as a NullEnum
func (WebhookSubscriptionCreateRequest_Resource) AsResourceEnum ¶
func (t WebhookSubscriptionCreateRequest_Resource) AsResourceEnum() (ResourceEnum, error)
AsResourceEnum returns the union data inside the WebhookSubscriptionCreateRequest_Resource as a ResourceEnum
func (*WebhookSubscriptionCreateRequest_Resource) FromNullEnum ¶
func (t *WebhookSubscriptionCreateRequest_Resource) FromNullEnum(v NullEnum) error
FromNullEnum overwrites any union data inside the WebhookSubscriptionCreateRequest_Resource as the provided NullEnum
func (*WebhookSubscriptionCreateRequest_Resource) FromResourceEnum ¶
func (t *WebhookSubscriptionCreateRequest_Resource) FromResourceEnum(v ResourceEnum) error
FromResourceEnum overwrites any union data inside the WebhookSubscriptionCreateRequest_Resource as the provided ResourceEnum
func (WebhookSubscriptionCreateRequest_Resource) MarshalJSON ¶
func (t WebhookSubscriptionCreateRequest_Resource) MarshalJSON() ([]byte, error)
func (*WebhookSubscriptionCreateRequest_Resource) MergeNullEnum ¶
func (t *WebhookSubscriptionCreateRequest_Resource) MergeNullEnum(v NullEnum) error
MergeNullEnum performs a merge with any union data inside the WebhookSubscriptionCreateRequest_Resource, using the provided NullEnum
func (*WebhookSubscriptionCreateRequest_Resource) MergeResourceEnum ¶
func (t *WebhookSubscriptionCreateRequest_Resource) MergeResourceEnum(v ResourceEnum) error
MergeResourceEnum performs a merge with any union data inside the WebhookSubscriptionCreateRequest_Resource, using the provided ResourceEnum
func (*WebhookSubscriptionCreateRequest_Resource) UnmarshalJSON ¶
func (t *WebhookSubscriptionCreateRequest_Resource) UnmarshalJSON(b []byte) error
type WebhookSubscriptionCreated ¶
type WebhookSubscriptionCreated struct {
// Created Timestamp set once when the row is first created.
Created time.Time `json:"created"`
// CustomHeaders Custom HTTP headers to include with each delivery.
CustomHeaders interface{} `json:"custom_headers"`
// Enabled Whether this subscription is active and will be dispatched.
Enabled bool `json:"enabled"`
// EventTypes Event types the subscription listens for.
EventTypes []string `json:"event_types"`
// Id Encoded identifier of the webhook subscription.
Id string `json:"id"`
// IntervalHours Hours between snapshot deliveries.
IntervalHours nullable.Nullable[int] `json:"interval_hours"`
// Kind Type of webhook this subscription delivers.
Kind KindEnum `json:"kind"`
// MaxItems Max rows a real snapshot delivers. Null or 0 falls back to the default item limit.
MaxItems nullable.Nullable[int] `json:"max_items"`
// Resource Resource type the subscription is for (content or creator).
Resource WebhookSubscriptionCreated_Resource `json:"resource"`
// ResourceFilters Filters applied to select which resources are delivered.
ResourceFilters interface{} `json:"resource_filters"`
// Secret Full signing secret, returned only once, at the moment it is minted. Null when the subscription reuses the brand's existing default secret, since that value is never shown twice.
Secret nullable.Nullable[string] `json:"secret"`
// SecretPrefix Public prefix of the subscription signing secret.
SecretPrefix string `json:"secret_prefix"`
// Url Destination URL where webhook payloads are sent.
Url string `json:"url"`
}
WebhookSubscriptionCreated A subscription just created, with the signing secret attached.
The secret is shown on this response only and never again.
type WebhookSubscriptionCreated_Resource ¶
type WebhookSubscriptionCreated_Resource struct {
// contains filtered or unexported fields
}
WebhookSubscriptionCreated_Resource Resource type the subscription is for (content or creator).
func (WebhookSubscriptionCreated_Resource) AsNullEnum ¶
func (t WebhookSubscriptionCreated_Resource) AsNullEnum() (NullEnum, error)
AsNullEnum returns the union data inside the WebhookSubscriptionCreated_Resource as a NullEnum
func (WebhookSubscriptionCreated_Resource) AsResourceEnum ¶
func (t WebhookSubscriptionCreated_Resource) AsResourceEnum() (ResourceEnum, error)
AsResourceEnum returns the union data inside the WebhookSubscriptionCreated_Resource as a ResourceEnum
func (*WebhookSubscriptionCreated_Resource) FromNullEnum ¶
func (t *WebhookSubscriptionCreated_Resource) FromNullEnum(v NullEnum) error
FromNullEnum overwrites any union data inside the WebhookSubscriptionCreated_Resource as the provided NullEnum
func (*WebhookSubscriptionCreated_Resource) FromResourceEnum ¶
func (t *WebhookSubscriptionCreated_Resource) FromResourceEnum(v ResourceEnum) error
FromResourceEnum overwrites any union data inside the WebhookSubscriptionCreated_Resource as the provided ResourceEnum
func (WebhookSubscriptionCreated_Resource) MarshalJSON ¶
func (t WebhookSubscriptionCreated_Resource) MarshalJSON() ([]byte, error)
func (*WebhookSubscriptionCreated_Resource) MergeNullEnum ¶
func (t *WebhookSubscriptionCreated_Resource) MergeNullEnum(v NullEnum) error
MergeNullEnum performs a merge with any union data inside the WebhookSubscriptionCreated_Resource, using the provided NullEnum
func (*WebhookSubscriptionCreated_Resource) MergeResourceEnum ¶
func (t *WebhookSubscriptionCreated_Resource) MergeResourceEnum(v ResourceEnum) error
MergeResourceEnum performs a merge with any union data inside the WebhookSubscriptionCreated_Resource, using the provided ResourceEnum
func (*WebhookSubscriptionCreated_Resource) UnmarshalJSON ¶
func (t *WebhookSubscriptionCreated_Resource) UnmarshalJSON(b []byte) error
type WebhookSubscription_LastStatus ¶
type WebhookSubscription_LastStatus struct {
// contains filtered or unexported fields
}
WebhookSubscription_LastStatus Outcome status of the most recent delivery. Empty until the subscription has dispatched for the first time.
func (WebhookSubscription_LastStatus) AsBlankEnum ¶
func (t WebhookSubscription_LastStatus) AsBlankEnum() (BlankEnum, error)
AsBlankEnum returns the union data inside the WebhookSubscription_LastStatus as a BlankEnum
func (WebhookSubscription_LastStatus) AsLastStatusEnum ¶
func (t WebhookSubscription_LastStatus) AsLastStatusEnum() (LastStatusEnum, error)
AsLastStatusEnum returns the union data inside the WebhookSubscription_LastStatus as a LastStatusEnum
func (*WebhookSubscription_LastStatus) FromBlankEnum ¶
func (t *WebhookSubscription_LastStatus) FromBlankEnum(v BlankEnum) error
FromBlankEnum overwrites any union data inside the WebhookSubscription_LastStatus as the provided BlankEnum
func (*WebhookSubscription_LastStatus) FromLastStatusEnum ¶
func (t *WebhookSubscription_LastStatus) FromLastStatusEnum(v LastStatusEnum) error
FromLastStatusEnum overwrites any union data inside the WebhookSubscription_LastStatus as the provided LastStatusEnum
func (WebhookSubscription_LastStatus) MarshalJSON ¶
func (t WebhookSubscription_LastStatus) MarshalJSON() ([]byte, error)
func (*WebhookSubscription_LastStatus) MergeBlankEnum ¶
func (t *WebhookSubscription_LastStatus) MergeBlankEnum(v BlankEnum) error
MergeBlankEnum performs a merge with any union data inside the WebhookSubscription_LastStatus, using the provided BlankEnum
func (*WebhookSubscription_LastStatus) MergeLastStatusEnum ¶
func (t *WebhookSubscription_LastStatus) MergeLastStatusEnum(v LastStatusEnum) error
MergeLastStatusEnum performs a merge with any union data inside the WebhookSubscription_LastStatus, using the provided LastStatusEnum
func (*WebhookSubscription_LastStatus) UnmarshalJSON ¶
func (t *WebhookSubscription_LastStatus) UnmarshalJSON(b []byte) error
type WebhookSubscription_Resource ¶
type WebhookSubscription_Resource struct {
// contains filtered or unexported fields
}
WebhookSubscription_Resource Resource type the subscription is for (content or creator).
func (WebhookSubscription_Resource) AsNullEnum ¶
func (t WebhookSubscription_Resource) AsNullEnum() (NullEnum, error)
AsNullEnum returns the union data inside the WebhookSubscription_Resource as a NullEnum
func (WebhookSubscription_Resource) AsResourceEnum ¶
func (t WebhookSubscription_Resource) AsResourceEnum() (ResourceEnum, error)
AsResourceEnum returns the union data inside the WebhookSubscription_Resource as a ResourceEnum
func (*WebhookSubscription_Resource) FromNullEnum ¶
func (t *WebhookSubscription_Resource) FromNullEnum(v NullEnum) error
FromNullEnum overwrites any union data inside the WebhookSubscription_Resource as the provided NullEnum
func (*WebhookSubscription_Resource) FromResourceEnum ¶
func (t *WebhookSubscription_Resource) FromResourceEnum(v ResourceEnum) error
FromResourceEnum overwrites any union data inside the WebhookSubscription_Resource as the provided ResourceEnum
func (WebhookSubscription_Resource) MarshalJSON ¶
func (t WebhookSubscription_Resource) MarshalJSON() ([]byte, error)
func (*WebhookSubscription_Resource) MergeNullEnum ¶
func (t *WebhookSubscription_Resource) MergeNullEnum(v NullEnum) error
MergeNullEnum performs a merge with any union data inside the WebhookSubscription_Resource, using the provided NullEnum
func (*WebhookSubscription_Resource) MergeResourceEnum ¶
func (t *WebhookSubscription_Resource) MergeResourceEnum(v ResourceEnum) error
MergeResourceEnum performs a merge with any union data inside the WebhookSubscription_Resource, using the provided ResourceEnum
func (*WebhookSubscription_Resource) UnmarshalJSON ¶
func (t *WebhookSubscription_Resource) UnmarshalJSON(b []byte) error
type WebhooksCreateSecretFormdataRequestBody ¶ added in v1.1.0
type WebhooksCreateSecretFormdataRequestBody = WebhookSecretCreateRequest
WebhooksCreateSecretFormdataRequestBody defines body for WebhooksCreateSecret for application/x-www-form-urlencoded ContentType.
type WebhooksCreateSecretJSONRequestBody ¶ added in v1.1.0
type WebhooksCreateSecretJSONRequestBody = WebhookSecretCreateRequest
WebhooksCreateSecretJSONRequestBody defines body for WebhooksCreateSecret for application/json ContentType.
type WebhooksCreateSecretMultipartRequestBody ¶ added in v1.1.0
type WebhooksCreateSecretMultipartRequestBody = WebhookSecretCreateRequest
WebhooksCreateSecretMultipartRequestBody defines body for WebhooksCreateSecret for multipart/form-data ContentType.
type WebhooksCreateSubscriptionFormdataRequestBody ¶ added in v1.1.0
type WebhooksCreateSubscriptionFormdataRequestBody = WebhookSubscriptionCreateRequest
WebhooksCreateSubscriptionFormdataRequestBody defines body for WebhooksCreateSubscription for application/x-www-form-urlencoded ContentType.
type WebhooksCreateSubscriptionJSONRequestBody ¶ added in v1.1.0
type WebhooksCreateSubscriptionJSONRequestBody = WebhookSubscriptionCreateRequest
WebhooksCreateSubscriptionJSONRequestBody defines body for WebhooksCreateSubscription for application/json ContentType.
type WebhooksCreateSubscriptionMultipartRequestBody ¶ added in v1.1.0
type WebhooksCreateSubscriptionMultipartRequestBody = WebhookSubscriptionCreateRequest
WebhooksCreateSubscriptionMultipartRequestBody defines body for WebhooksCreateSubscription for multipart/form-data ContentType.
type WebhooksListDeliveriesParams ¶ added in v1.1.0
type WebhooksListDeliveriesParams struct {
// Created Delivery creation time (ISO 8601).
Created *time.Time `form:"created,omitempty" json:"created,omitempty"`
// CreatedAfter Delivery creation time (ISO 8601). (Inclusive Lower Bound)
CreatedAfter *time.Time `form:"created_after,omitempty" json:"created_after,omitempty"`
// CreatedBefore Delivery creation time (ISO 8601). (Inclusive Upper Bound)
CreatedBefore *time.Time `form:"created_before,omitempty" json:"created_before,omitempty"`
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
SortBy *[]WebhooksListDeliveriesParamsSortBy `form:"sort_by,omitempty" json:"sort_by,omitempty"`
// State Current delivery state.
State *WebhooksListDeliveriesParamsState `form:"state,omitempty" json:"state,omitempty"`
// StateNot exclude where state - Current delivery state.
StateNot *WebhooksListDeliveriesParamsStateNot `form:"state!,omitempty" json:"state!,omitempty"`
// Subscription Scope to a single subscription by its masked id.
Subscription *string `form:"subscription,omitempty" json:"subscription,omitempty"`
}
WebhooksListDeliveriesParams defines parameters for WebhooksListDeliveries.
type WebhooksListDeliveriesParamsSortBy ¶ added in v1.1.0
type WebhooksListDeliveriesParamsSortBy string
WebhooksListDeliveriesParamsSortBy defines parameters for WebhooksListDeliveries.
const ( Created WebhooksListDeliveriesParamsSortBy = "created" MinusCreated WebhooksListDeliveriesParamsSortBy = "-created" )
Defines values for WebhooksListDeliveriesParamsSortBy.
type WebhooksListDeliveriesParamsState ¶ added in v1.1.0
type WebhooksListDeliveriesParamsState string
WebhooksListDeliveriesParamsState defines parameters for WebhooksListDeliveries.
const ( WebhooksListDeliveriesParamsStateEXHAUSTED WebhooksListDeliveriesParamsState = "EXHAUSTED" WebhooksListDeliveriesParamsStateFAILED WebhooksListDeliveriesParamsState = "FAILED" WebhooksListDeliveriesParamsStatePENDING WebhooksListDeliveriesParamsState = "PENDING" WebhooksListDeliveriesParamsStateQUOTAEXHAUSTED WebhooksListDeliveriesParamsState = "QUOTA_EXHAUSTED" WebhooksListDeliveriesParamsStateSUCCEEDED WebhooksListDeliveriesParamsState = "SUCCEEDED" )
Defines values for WebhooksListDeliveriesParamsState.
type WebhooksListDeliveriesParamsStateNot ¶ added in v1.1.0
type WebhooksListDeliveriesParamsStateNot string
WebhooksListDeliveriesParamsStateNot defines parameters for WebhooksListDeliveries.
const ( WebhooksListDeliveriesParamsStateNotEXHAUSTED WebhooksListDeliveriesParamsStateNot = "EXHAUSTED" WebhooksListDeliveriesParamsStateNotFAILED WebhooksListDeliveriesParamsStateNot = "FAILED" WebhooksListDeliveriesParamsStateNotPENDING WebhooksListDeliveriesParamsStateNot = "PENDING" WebhooksListDeliveriesParamsStateNotQUOTAEXHAUSTED WebhooksListDeliveriesParamsStateNot = "QUOTA_EXHAUSTED" WebhooksListDeliveriesParamsStateNotSUCCEEDED WebhooksListDeliveriesParamsStateNot = "SUCCEEDED" )
Defines values for WebhooksListDeliveriesParamsStateNot.
type WebhooksListSecretsParams ¶ added in v1.1.0
type WebhooksListSecretsParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
WebhooksListSecretsParams defines parameters for WebhooksListSecrets.
type WebhooksListSubscriptionsParams ¶ added in v1.1.0
type WebhooksListSubscriptionsParams struct {
// Page Page number (1-based). Omit for the first page.
Page *int `form:"page,omitempty" json:"page,omitempty"`
// PageSize Items per page (1-30). Defaults to 30; larger values are clamped down.
PageSize *int `form:"page_size,omitempty" json:"page_size,omitempty"`
}
WebhooksListSubscriptionsParams defines parameters for WebhooksListSubscriptions.
type WebhooksUpdateSubscriptionFormdataRequestBody ¶ added in v1.1.0
type WebhooksUpdateSubscriptionFormdataRequestBody = PatchedWebhookSubscriptionUpdateRequest
WebhooksUpdateSubscriptionFormdataRequestBody defines body for WebhooksUpdateSubscription for application/x-www-form-urlencoded ContentType.
type WebhooksUpdateSubscriptionJSONRequestBody ¶ added in v1.1.0
type WebhooksUpdateSubscriptionJSONRequestBody = PatchedWebhookSubscriptionUpdateRequest
WebhooksUpdateSubscriptionJSONRequestBody defines body for WebhooksUpdateSubscription for application/json ContentType.
type WebhooksUpdateSubscriptionMultipartRequestBody ¶ added in v1.1.0
type WebhooksUpdateSubscriptionMultipartRequestBody = PatchedWebhookSubscriptionUpdateRequest
WebhooksUpdateSubscriptionMultipartRequestBody defines body for WebhooksUpdateSubscription for multipart/form-data ContentType.