API (sif.kirara.ca)

This page details the available JSON APIs on sif.kirara.ca.

Usage Permissions

The API is open to use by anyone, for any reason, no prior permission required. Just keep your request rate at a reasonable level. Credit is also not required in applications that use the API, but you may do so if you wish.

Cards

Synopsis:

  • GET /api/v1/card/[ordinal].json
  • GET /api/v1/card/random.json
{
  "cards": [
    {
      "id": 3265,
      "ordinal": 3200,
      "title": "\u30c9\u30ea\u30fc\u30df\u30f3\u30e9\u30a4\u30c8",
      "title_en": "Dreamin' Lights",
      "char_name": "Sakurauchi Riko",
      "original_char_name": "\u685c\u5185\u68a8\u5b50",
      "type_id": 102,
      "illustrator": null,
      "is_transform_disabled": 0,
      "is_support_card": 0,
      "is_costume_card": 0,
      "is_pre_transformed": 0,
      "rarity": 4,
      "attribute": 2,
      "skill": {
        "id": 2310,
        "name": "\u30c9\u30ea\u30fc\u30df\u30f3\u30e9\u30a4\u30c8",
        "name_en": "Dreamin' Lights",
        "trigger_type": 3,
        "effect_type": 11,
        "level_max": 8,
        "probability": [...],
        "effect_val": [...],
        "effect_dur": [...],
        "trigger_val": [...],
        "translated_target": null,
        "translated_trigger_target": null
      },
      "center_skill": {
        "id": 49,
        "name": "\u30d4\u30e5\u30a2\u30a8\u30f3\u30b8\u30a7\u30eb",
        "name_en": "Pure Angel",
        "effect_type": 2,
        "percent": 9,
        "extra_apply_type_name": "Aqours",
        "extra_apply_type_name_en": "Aqours",
        "extra_apply_type": 5,
        "extra_effect": 2,
        "extra_percent": 3
      },
      "hp_base": 6,
      "normal_max_kizuna": 500,
      "transformed_max_kizuna": 1000,
      "normal_max_level": 80,
      "transformed_max_level": 100,
      "normal_max_level_exp": 59408,
      "transformed_max_level_exp": 20292,
      "affiliation": 2,
      "year": 2,
      "sub_affiliation": 11,
      "album_page_id": 569,
      "extra_data": {
        "release_date": 1642604400,
        "release_date_is_dirty": 0
      },
      "sets": [
        "patch-1642604400"
      ],
      "smile": [...],
      "pure": [...],
      "cool": [...],
      "stamina": [...],
      "sell_price": [...],
      "exp_given": [...]
    }
  ]
}

Get card data. [ordinal] can be provided as a comma-separated list of numbers to get multiple cards.

Card List

Synopsis:

  • GET /api/v1/card_list.json
{
  "counts": {
    "n_count": 3287, 
    "t_count": 3205, 
    "km_count": 3205, 
    "lm_count": 3205
  },
  "stubs": [
    {
      "id": 1,
      "ordinal": 1,
      "char_name": "Osaka Shizuku",
      "is_transform_disabled": 0,
      "is_pre_transformed": 0,
      "rarity": 1
    }
  ]
}

Provides a short list of all cards.

  • counts:
    • n_count: Number of cards that can exist in a non-idolized state.
    • t_count: Number of cards that can exist in an idolized state.
    • lm_count: Number of cards that can exist in a max-leveled state.
    • km_count: Number of cards that can exist in a max-bonded state.
  • stubs:
    • Element:
      • id: Internal ID.
      • ordinal: Album number. Use this number when linking to /card/… pages.
      • char_name: Character name
      • is_transform_disabled: 1 if non-idolizable.
      • is_pre_transformed: 1 if always idolized (promo cards).
      • rarity: N = 1, R = 2, SR = 3, UR = 4, SSR = 5

Set

Synopsis:

  • GET /api/v1/set/[name].json
{
  "cards": [
    {...},
    {...}
  ]
}

Get the list of cards associated with a named release.

  • cards: Array of list members.
    • See Card API.

Set List

Synopsis:

  • GET /api/v1/card/set_list.json
{
  "sets": [
    {
      "id": "patch-1646751600",
      "preview": ["3336t", "3335t", "3334t", "3333t", "3332t"],
      "display_name": "release: 2022-03-09"
    }
  ]
}

Provides the list of releases (internally called sets).

  • sets:
    • Element:
      • id: Set ID, to be passed as the name parameter to the Set API
      • preview: List of icons to show as a preview. Given as “N[t]”, where N is the internal ID (not ordinal), and [t] is either “t” if the icon is idolized, or “” if not.
      • display_name: A human-readable display name.

Pair

Synopsis:

  • GET /api/v1/pair/[pair_id].json
{
  "cards": [
    {...},
    {...}
  ]
}

Get a named pair of cards (which form a whole image when their art is placed side-by-side).

  • cards: Array of two card objects.
    • See Card API.

Accessories

Synopsis:

  • GET /api/v1/accessory/[ordinal].json
{
  "accessories": [
    {
      "id": 319,
      "rarity": 4,
      "name": "UR千歌のピンズ",
      "name_en": "UR Chika Pin",
      "level_max": 8,
      "icon_name": "icon_319.png",
      "trigger_type": null,
      "trigger_fixed_param": null,
      "effect_type": 11,
      "effect_targets": null,
      "effect_target_name": null,
      "is_limited": true,
      "unit_ordinal": 3548,
      "unit_type_id": 101,
      "unit_stub": {
        "id": 3656, 
        "ordinal": 3548, 
        "char_name": "Takami Chika", 
        "is_transform_disabled": 0, 
        "is_pre_transformed": 1, 
        "rarity": 4
      },
      "smile": [
        543,
        583,
        ...
      ],
      "pure": [
        1232,
        1442,
        ...
      ],
      "cool": [
        899,
        1049,
        ...
      ],
      "probability": [
        9,
        11,
        ...
      ],
      "effect_val": [
        1500.0,
        2000.0,
        ...
      ],
      "effect_dur": [
        0.0,
        0.0,
        ...
      ],
      "trigger_val": [
        null,
        null,
        ...
      ]
    }
  ]
}

Get accessory data. [ordinal] can be provided as a comma-separated list of numbers to get multiple accessories.

smile, pure, cool, probability, effect_val, effect_dur, and trigger_val will have more entries than max_level, this is for skill amplification.

effect_target is a list of strings in the format "[REF TYPE],[TARGET]". If REF TYPE is 3, TARGET is a character (unit type) ID.

trigger_type is for special skill activation conditions. Currently the only known value is 201, for repeated skill activations of a specific effect type (named in trigger_effect_value).

It is possible for is_limited to be true, but unit_ordinal/unit_type_id to be null. This is because the associated card record is encrypted and cannot be read/displayed on site.

Accessory List

Synopsis:

  • GET /api/v1/accessory_list.json
{
  "accessories": [
    {"id": 1, "is_valid": true},
    ...
  ]
}

Returns a list of valid accessory IDs, and whether they can be used in a live show (is_valid).