Activity Operations
Core Data Models
Activity Action (ActivityAction
)
ActivityAction
)action.id: String // Action identifier
action.type: ActionsEnum // Action type
action.timestamp: Kotlinx_datetimeInstant // Action timestamp
action.context: ActivityContext? // Action context
action.content: Content? // Action content
Activity Response (ActivityResponseBody
)
ActivityResponseBody
)response.id: String // Activity identifier
response.points: Int32? // Points earned
response.status: String? // Activity status
Activity Operations
Add Activity
do {
let tags = [Tag(id: "tag1", name: "Football")]
let content = Content(/* content data */)
let campaign = Campaign(/* campaign data */)
let response = try await sdk.activity().add(
action: ActionsEnum.view,
tags: tags,
content: content,
campaign: campaign
)
print("Activity added: \(response.id)")
} catch {
print("Error adding activity: \(error)")
}
Add Click Ad Activity
do {
let tags = [Tag(id: "ad1", name: "Advertisement")]
let response = try await sdk.activity().addClickAd(
tags: tags,
content: nil,
campaign: nil
)
print("Click ad activity added: \(response.id)")
} catch {
print("Error adding click ad activity: \(error)")
}
Get Activities for User
do {
let filters = UserActivityFilters(
action: ActionsEnum.view,
limit: 20,
page: 1
)
let activities = try await sdk.activity().getActivitiesForUser(
userId: "user123",
filters: filters,
disableCache: false
)
print("User activities fetched")
} catch {
print("Error fetching user activities: \(error)")
}
Get Own Activities
do {
let activities = try await sdk.activity().getOwnActivities(
action: ActionsEnum.prediction,
limit: 50,
page: 1,
disableCache: false
)
print("Own activities fetched")
} catch {
print("Error fetching own activities: \(error)")
}
Discussions API
Core Data Models
Discussion Model (Discussion
)
Discussion
)discussion.id: String // Discussion identifier
discussion.title: String // Discussion title
discussion.description: String? // Discussion description
discussion.type: DiscussionType? // Discussion type
discussion.status: DiscussionStatus? // Discussion status
discussion.context: DiscussionContext? // Discussion context
discussion.stats: DiscussionStats? // Discussion statistics
discussion.createdAt: Kotlinx_datetimeInstant? // Creation timestamp
Discussion Comment (DiscussionComment
)
DiscussionComment
)comment.id: String // Comment identifier
comment.content: String // Comment content
comment.authorId: String // Author identifier
comment.discussionId: String // Discussion identifier
comment.createdAt: Kotlinx_datetimeInstant? // Creation timestamp
comment.reactions: [Reaction]? // Comment reactions
Create Post Model (CreatePost
)
CreatePost
)post.content: String // Post content
post.parentId: String? // Parent post ID (for replies)
post.mentions: [String]? // Mentioned user IDs
Updated about 23 hours ago