# org.swappulse.challengeEntry

> Published by [bridge.swappulse.org](https://lexicon.garden/identity/did:plc:jwoatauidzr4lollmro2gh35)

## Description

A user's contribution to a challenge, mirrored to AT Protocol as a real org.swappulse.challengeEntry record. References the challenge via strongRef so entries are portable and verifiable across instances.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:jwoatauidzr4lollmro2gh35/org.swappulse.challengeEntry)
- [Documentation](https://lexicon.garden/lexicon/did:plc:jwoatauidzr4lollmro2gh35/org.swappulse.challengeEntry/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:jwoatauidzr4lollmro2gh35/org.swappulse.challengeEntry/examples)

## Definitions

### `org.swappulse.challengeEntry`

**Type**: `record`

A challenge entry contribution.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `notes` | `string` | No |  |
| `status` | `string` | No |  |
| `category` | `string` | No |  |
| `deckList` | `array` | No |  |
| `createdAt` | `string` (datetime) | Yes |  |
| `entryType` | `string` | Yes |  |
| `challengeId` | `string` | Yes |  |
| `pullPostUri` | `string` (at-uri) | No |  |
| `submittedAt` | `string` (datetime) | Yes |  |
| `challengeRef` | `string` (at-uri) | No |  |
| `participantDid` | `string` (did) | No |  |
| `moderatorLabels` | `array` | No |  |
| `participantName` | `string` | No |  |
| `rejectionReason` | `string` | No |  |
| `contributionUris` | `array` | No |  |
| `verificationHash` | `string` | No |  |
| `contributionCount` | `integer` | No |  |
| `collectionTotalValue` | `number` | No |  |
| `setCompletionPercent` | `number` | No |  |
| `overrideProfileVisibility` | `object` | No |  |

## Raw Schema

```json
{
  "id": "org.swappulse.challengeEntry",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "challengeId",
          "entryType",
          "submittedAt",
          "createdAt"
        ],
        "properties": {
          "notes": {
            "type": "string",
            "maxLength": 500
          },
          "status": {
            "type": "string",
            "knownValues": [
              "pending",
              "approved",
              "rejected",
              "expired"
            ]
          },
          "category": {
            "type": "string"
          },
          "deckList": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          },
          "entryType": {
            "type": "string",
            "knownValues": [
              "set_progress",
              "deck_list",
              "card_pull",
              "collection_value"
            ]
          },
          "challengeId": {
            "type": "string"
          },
          "pullPostUri": {
            "type": "string",
            "format": "at-uri"
          },
          "submittedAt": {
            "type": "string",
            "format": "datetime"
          },
          "challengeRef": {
            "type": "string",
            "format": "at-uri"
          },
          "participantDid": {
            "type": "string",
            "format": "did"
          },
          "moderatorLabels": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "participantName": {
            "type": "string"
          },
          "rejectionReason": {
            "type": "string",
            "maxLength": 200
          },
          "contributionUris": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "at-uri"
            },
            "maxLength": 1000
          },
          "verificationHash": {
            "type": "string"
          },
          "contributionCount": {
            "type": "integer"
          },
          "collectionTotalValue": {
            "type": "number"
          },
          "setCompletionPercent": {
            "type": "number"
          },
          "overrideProfileVisibility": {
            "type": "object"
          }
        }
      },
      "description": "A challenge entry contribution."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "revision": 1,
  "description": "A user's contribution to a challenge, mirrored to AT Protocol as a real org.swappulse.challengeEntry record. References the challenge via strongRef so entries are portable and verifiable across instances."
}
```
