A community challenge.
tid
Timestamp-based ID
Properties
budgetLimit
number
Optional
No description available.
category
string
Optional
No description available.
helpful-trader, accuracy-champion, community-builder, set-completer, shiny-hunter, journal-writer, meetup-organiserchallengeType
string
Required
No description available.
set_sprint, budget_deck, pull_of_week, community_goalcircleRef
string
at-uri
Optional
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
createdAt
string
datetime
Required
An RFC 3339 formatted timestamp.
creatorDid
string
did
Optional
A decentralized identifier (DID).
description
string
Optional
No description available.
maxLength: 2000 bytesendsAt
string
datetime
Optional
An RFC 3339 formatted timestamp.
goal
object
Optional
No description available.
guildApproved
boolean
Optional
No description available.
imageUrl
string
uri
Optional
A valid URI.
leaderboardConfig
object
Optional
No description available.
mode
string
Optional
No description available.
collective, guild, competitivepublisherName
string
Optional
No description available.
reward
object
Optional
No description available.
rewardBadge
string
Optional
No description available.
maxLength: 50 bytesrules
string
Optional
No description available.
maxLength: 2000 bytesscope
string
Optional
No description available.
global, circlestartsAt
string
datetime
Optional
An RFC 3339 formatted timestamp.
status
string
Required
No description available.
upcoming, active, voting, completed, cancelledtags
array
of
string
Optional
No description available.
maxLength: 10 itemstargetSetCode
string
Optional
No description available.
title
string
Required
No description available.
maxLength: 100 bytesvotingEndsAt
string
datetime
Optional
An RFC 3339 formatted timestamp.
winnerDids
array
of
string
did
Optional
No description available.
View raw schema
{
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"challengeType",
"title",
"status",
"createdAt"
],
"properties": {
"goal": {
"type": "object",
"properties": {
"metric": {
"type": "string"
},
"target": {
"type": "integer"
},
"filters": {
"type": "object"
}
}
},
"mode": {
"type": "string",
"knownValues": [
"collective",
"guild",
"competitive"
]
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"maxLength": 10
},
"rules": {
"type": "string",
"maxLength": 2000
},
"scope": {
"type": "string",
"knownValues": [
"global",
"circle"
]
},
"title": {
"type": "string",
"maxLength": 100
},
"endsAt": {
"type": "string",
"format": "datetime"
},
"reward": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"shared": {
"type": "boolean"
},
"badgeId": {
"type": "string"
},
"themeId": {
"type": "string"
}
}
},
"status": {
"type": "string",
"knownValues": [
"upcoming",
"active",
"voting",
"completed",
"cancelled"
]
},
"category": {
"type": "string",
"knownValues": [
"helpful-trader",
"accuracy-champion",
"community-builder",
"set-completer",
"shiny-hunter",
"journal-writer",
"meetup-organiser"
]
},
"imageUrl": {
"type": "string",
"format": "uri"
},
"startsAt": {
"type": "string",
"format": "datetime"
},
"circleRef": {
"type": "string",
"format": "at-uri"
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"creatorDid": {
"type": "string",
"format": "did"
},
"winnerDids": {
"type": "array",
"items": {
"type": "string",
"format": "did"
}
},
"budgetLimit": {
"type": "number"
},
"description": {
"type": "string",
"maxLength": 2000
},
"rewardBadge": {
"type": "string",
"maxLength": 50
},
"votingEndsAt": {
"type": "string",
"format": "datetime"
},
"challengeType": {
"type": "string",
"knownValues": [
"set_sprint",
"budget_deck",
"pull_of_week",
"community_goal"
]
},
"guildApproved": {
"type": "boolean"
},
"publisherName": {
"type": "string"
},
"targetSetCode": {
"type": "string"
},
"leaderboardConfig": {
"type": "object"
}
}
},
"description": "A community challenge."
}