Skip to main content
Sprays are cosmetics that players place on surfaces throughout Valorant’s maps — on walls, floors, and objectives. Some sprays have multiple levels that unlock animated variants (PNG or GIF). The Sprays API lets you retrieve the complete catalog or query individual sprays and their levels directly by UUID.
All requests must include a User-Agent header in the format AppName/Version (+URL). Requests without it will be rejected.

GET /v1/sprays

Returns a list of all sprays.
Use the language query parameter to receive localized displayName values for each spray.

Query parameters

language
string
default:"en-US"
BCP 47 locale string for response localization. Example: it-IT, ru-RU, tr-TR.

Example request

curl --request GET \
  --url "https://astra.teamfortuna.xyz/v1/sprays?language=en-US" \
  --header "User-Agent: MyApp/1.0 (+https://example.com)"

Response

{
  "status": 200,
  "data": [
    {
      "uuid": "abdd1060-4133-c259-eb11-b19512a1853a",
      "displayName": "¡Barrida! Spray",
      "category": null,
      "themeUuid": null,
      "isNullSpray": false,
      "hideIfNotOwned": true,
      "displayIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/displayicon.png",
      "fullIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fullicon.png",
      "fullTransparentIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fulltransparenticon.png",
      "animationPng": null,
      "animationGif": null,
      "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_PrimaryAsset",
      "levels": [
        {
          "uuid": "a8845bf6-4952-52b3-99ad-b28865f7bea4",
          "sprayLevel": 1,
          "displayName": "¡Barrida! Spray",
          "displayIcon": null,
          "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_Level1_PrimaryAsset"
        }
      ]
    }
  ]
}

Response fields

status
number
required
HTTP status code of the response.
data
object[]
required
Array of spray objects.

GET /v1/sprays/{uuid}

Returns a single spray by its UUID.

Path parameters

uuid
string
required
The UUID of the spray to retrieve.

Query parameters

language
string
default:"en-US"
BCP 47 locale string for response localization.

Example request

curl --request GET \
  --url "https://astra.teamfortuna.xyz/v1/sprays/abdd1060-4133-c259-eb11-b19512a1853a?language=en-US" \
  --header "User-Agent: MyApp/1.0 (+https://example.com)"

Response

{
  "status": 200,
  "data": {
    "uuid": "abdd1060-4133-c259-eb11-b19512a1853a",
    "displayName": "¡Barrida! Spray",
    "category": null,
    "themeUuid": null,
    "isNullSpray": false,
    "hideIfNotOwned": true,
    "displayIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/displayicon.png",
    "fullIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fullicon.png",
    "fullTransparentIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fulltransparenticon.png",
    "animationPng": null,
    "animationGif": null,
    "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_PrimaryAsset",
    "levels": [
      {
        "uuid": "a8845bf6-4952-52b3-99ad-b28865f7bea4",
        "sprayLevel": 1,
        "displayName": "¡Barrida! Spray",
        "displayIcon": null,
        "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_Level1_PrimaryAsset"
      }
    ]
  }
}

GET /v1/sprays/levels

Returns a flat list of all spray levels across every spray. Use this endpoint when you need to look up a level directly by its UUID without knowing which parent spray it belongs to.

Query parameters

language
string
default:"en-US"
BCP 47 locale string for response localization.

Example request

curl --request GET \
  --url "https://astra.teamfortuna.xyz/v1/sprays/levels?language=en-US" \
  --header "User-Agent: MyApp/1.0 (+https://example.com)"

Response

{
  "status": 200,
  "data": [
    {
      "uuid": "a8845bf6-4952-52b3-99ad-b28865f7bea4",
      "sprayLevel": 1,
      "displayName": "¡Barrida! Spray",
      "displayIcon": null,
      "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_Level1_PrimaryAsset"
    }
  ]
}

Response fields

status
number
required
HTTP status code of the response.
data
object[]
required
Array of spray level objects.

GET /v1/sprays/levels/{uuid}

Returns a single spray level by its UUID.

Path parameters

uuid
string
required
The UUID of the spray level to retrieve.

Query parameters

language
string
default:"en-US"
BCP 47 locale string for response localization.

Example request

curl --request GET \
  --url "https://astra.teamfortuna.xyz/v1/sprays/abdd1060-4133-c259-eb11-b19512a1853a?language=en-US" \
  --header "User-Agent: MyApp/1.0 (+https://example.com)"

Response

{
  "st{
  "status": 200,
  "data": {
    "uuid": "abdd1060-4133-c259-eb11-b19512a1853a",
    "displayName": "¡Barrida! Spray",
    "category": null,
    "themeUuid": null,
    "isNullSpray": false,
    "hideIfNotOwned": true,
    "displayIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/displayicon.png",
    "fullIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fullicon.png",
    "fullTransparentIcon": "https://valmedia.teamfortuna.xyz/sprays/abdd1060-4133-c259-eb11-b19512a1853a/fulltransparenticon.png",
    "animationPng": null,
    "animationGif": null,
    "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_PrimaryAsset",
    "levels": [
      {
        "uuid": "a8845bf6-4952-52b3-99ad-b28865f7bea4",
        "sprayLevel": 1,
        "displayName": "¡Barrida! Spray",
        "displayIcon": null,
        "assetPath": "ShooterGame/Content/Personalization/Sprays/Masters1_2026Shotcalls/Spray_Masters1_2026Shotcalls_Level1_PrimaryAsset"
      }
    ]
  }
}