For the complete documentation index, see llms.txt. This page is also available as Markdown.

Missions

Mission management and user mission tracking

Get all missions

get
/api/missions

Retrieve all missions or only active missions (Admin only)

Query parameters
allbooleanOptional

Include inactive missions

Responses
200

List of missions

application/json
get/api/missions
GET /api/missions HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*
200

List of missions

{
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "description": "Complete 3 mini-games to earn rewards",
      "campaign_key": "minigames-season-1",
      "type": "mini-games",
      "active": true,
      "thumb_url": "https://example.com/mission-thumb.png"
    }
  ]
}

Create a new mission

post
/api/missions

Create a new mission campaign (Admin only)

Body
descriptionstringRequired

Mission description

Example: Complete 3 mini-games to earn rewards
campaign_keystringRequired

Campaign identifier for reward system

Example: minigames-season-1
typestring · enumRequired

Mission type

Example: mini-gamesPossible values:
thumb_urlstringRequired

Thumbnail image URL

Example: https://example.com/mission-thumb.png
Responses
201

Mission created successfully

application/json
post/api/missions
POST /api/missions HTTP/1.1
Host: exploration-games.decentraland.org
Content-Type: application/json
Accept: */*
Content-Length: 163

{
  "description": "Complete 3 mini-games to earn rewards",
  "campaign_key": "minigames-season-1",
  "type": "mini-games",
  "thumb_url": "https://example.com/mission-thumb.png"
}
{
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440001",
    "description": "Complete 3 mini-games to earn rewards",
    "campaign_key": "minigames-season-1",
    "type": "mini-games",
    "active": true,
    "thumb_url": "https://example.com/mission-thumb.png"
  }
}

Get mission details

get
/api/missions/{id}

Retrieve mission details including associated challenges and games (Admin only)

Path parameters
idstring · uuidRequired

Mission ID (UUID)

Responses
200

Mission details

application/json
get/api/missions/{id}
GET /api/missions/{id} HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*
200

Mission details

{
  "data": {
    "mission": {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "description": "Complete 3 mini-games to earn rewards",
      "campaign_key": "minigames-season-1",
      "type": "mini-games",
      "active": true,
      "thumb_url": "https://example.com/mission-thumb.png"
    },
    "challenges": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440003",
        "description": "Reach level 5 with a score over 1000",
        "game_id": "550e8400-e29b-41d4-a716-446655440000",
        "mission_id": "550e8400-e29b-41d4-a716-446655440001",
        "target_level": 5,
        "data": {
          "score": {
            "condition": ">=",
            "target": 1000
          }
        },
        "active": true
      }
    ],
    "games": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "Puzzle Master",
        "parcel": "10,20",
        "active": true
      }
    ]
  }
}

Update a mission

patch
/api/missions/{id}

Update an existing mission (Admin only)

Path parameters
idstring · uuidRequired

Mission ID (UUID)

Body
descriptionstringRequired

Mission description

Example: Complete 3 mini-games to earn rewards
campaign_keystringRequired

Campaign identifier for reward system

Example: minigames-season-1
typestring · enumRequired

Mission type

Example: mini-gamesPossible values:
thumb_urlstringRequired

Thumbnail image URL

Example: https://example.com/mission-thumb.png
Responses
204

Mission updated successfully

No content

patch/api/missions/{id}
PATCH /api/missions/{id} HTTP/1.1
Host: exploration-games.decentraland.org
Content-Type: application/json
Accept: */*
Content-Length: 163

{
  "description": "Complete 3 mini-games to earn rewards",
  "campaign_key": "minigames-season-1",
  "type": "mini-games",
  "thumb_url": "https://example.com/mission-thumb.png"
}

No content

Get available missions for user

get
/api/missions/available

Retrieve missions available to start for the authenticated user

Query parameters
typestring · enumOptional

Mission type filter

Default: mini-gamesPossible values:
Responses
200

List of available missions

application/json
get/api/missions/available
GET /api/missions/available HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*
200

List of available missions

{
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "description": "Complete 3 mini-games to earn rewards",
      "campaign_key": "minigames-season-1",
      "type": "mini-games",
      "active": true,
      "thumb_url": "https://example.com/mission-thumb.png"
    }
  ]
}

Get missions in progress

get
/api/missions/in_progress

Retrieve missions currently in progress for the authenticated user with challenges and games

Query parameters
typestring · enumOptional

Mission type filter

Default: mini-gamesPossible values:
Responses
200

Missions in progress with challenges and games

application/json
get/api/missions/in_progress
GET /api/missions/in_progress HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*
200

Missions in progress with challenges and games

{
  "data": {
    "missions": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440001",
        "description": "Complete 3 mini-games to earn rewards",
        "campaign_key": "minigames-season-1",
        "type": "mini-games",
        "active": true,
        "thumb_url": "https://example.com/mission-thumb.png",
        "start_time": "1698765432000"
      }
    ],
    "challenges": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440003",
        "description": "Reach level 5 with a score over 1000",
        "game_id": "550e8400-e29b-41d4-a716-446655440000",
        "mission_id": "550e8400-e29b-41d4-a716-446655440001",
        "target_level": 5,
        "data": {
          "score": {
            "condition": ">=",
            "target": 1000
          }
        },
        "active": true,
        "completed": true,
        "completed_at": "2024-10-30T12:34:56.789Z"
      }
    ],
    "games": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "Puzzle Master",
        "parcel": "10,20",
        "active": true
      }
    ]
  }
}

Get completed missions

get
/api/missions/completed

Retrieve missions completed by the authenticated user with challenges and games

Query parameters
typestring · enumOptional

Mission type filter

Default: mini-gamesPossible values:
Responses
200

Completed missions with challenges and games

application/json
get/api/missions/completed
GET /api/missions/completed HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*
200

Completed missions with challenges and games

{
  "data": {
    "missions": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440001",
        "description": "Complete 3 mini-games to earn rewards",
        "campaign_key": "minigames-season-1",
        "type": "mini-games",
        "active": true,
        "thumb_url": "https://example.com/mission-thumb.png",
        "start_time": "1698765432000"
      },
      {
        "end_time": "1698865432000",
        "user_mission_id": "550e8400-e29b-41d4-a716-446655440002"
      }
    ],
    "challenges": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440003",
        "description": "Reach level 5 with a score over 1000",
        "game_id": "550e8400-e29b-41d4-a716-446655440000",
        "mission_id": "550e8400-e29b-41d4-a716-446655440001",
        "target_level": 5,
        "data": {
          "score": {
            "condition": ">=",
            "target": 1000
          }
        },
        "active": true,
        "completed": true,
        "completed_at": "2024-10-30T12:34:56.789Z"
      }
    ],
    "games": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "Puzzle Master",
        "parcel": "10,20",
        "active": true
      }
    ]
  }
}

Start a mission

post
/api/missions/{id}/start

Start a mission for the authenticated user.

Rules:

  • Mini-games missions: Only one active mission at a time, with time window restrictions between missions

  • Fashion Week missions: Can have multiple active, switching between them marks previous as incomplete

  • Mission must exist and have a valid type

Path parameters
idstring · uuidRequired

Mission ID (UUID)

Responses
204

Mission started successfully

No content

post/api/missions/{id}/start
POST /api/missions/{id}/start HTTP/1.1
Host: exploration-games.decentraland.org
Accept: */*

No content

Last updated