---
title: "Get function data"
method: GET
path: "/raw/{region}/function/{func_id}"
tags: ["raw"]
---

# Get function data

`GET /raw/{region}/function/{func_id}`

Get the function data from the given ID
- **reverse**: Reverse lookup the skills that have this function
and return the reversed skill objects.
- **reverseDepth**: Controls the depth of the reverse lookup: func -> skill/np -> servant.
- **expand**: Add buff objects to mstFunc.expandedVals from the buff ID in mstFunc.vals.

## Path parameters

- `region` 'JP' | 'NA' | 'CN' | 'KR' | 'TW', required — Region Enum
- `func_id` integer, required

## Query parameters

- `reverse` boolean
- `reverseDepth` 'function' | 'skillNp' | 'servant' — Reverse Data Depth
- `expand` boolean

## Response `200`

Function entity

- FunctionEntity
  - `mstFunc` MstFunc, required
    - `vals` integer[], required
    - `expandedVals` BuffEntityNoReverse[]
      - `mstBuff` MstBuff, required
        - `vals` integer[], required
        - `tvals` integer[], required
        - `ckSelfIndv` integer[], required
        - `ckOpIndv` integer[], required
        - `script` object, required
        - `id` integer, required
        - `buffGroup` integer, required
        - `type` integer, required
        - `name` string, required
        - `detail` string, required
        - `iconId` integer, required
        - `maxRate` integer, required
    - `tvals` integer[], required
    - `questTvals` integer[], required
    - `effectList` integer[], required
    - `popupTextColor` integer, required
    - `script` object, nullable
    - `overWriteTvalsList` array[], nullable
      - integer[]
    - `id` integer, required
    - `cond` integer
    - `funcType` integer, required
    - `targetType` integer, required
    - `applyTarget` integer, required
    - `popupIconId` integer, required
    - `popupText` string, required
  - `mstFuncGroup` MstFuncGroup[], required
    - `funcId` integer, required
    - `eventId` integer, required
    - `baseFuncId` integer, required
    - `nameTotal` string, required
    - `name` string, required
    - `iconId` integer, required
    - `priority` integer, required
    - `isDispValue` boolean, required
  - `reverse` ReversedFunctionType
    - `raw` ReversedFunction
      - `skill` SkillEntity[]
        - `mstSkill` MstSkill, required
          - `effectList` integer[], required
          - `actIndividuality` integer[], required
          - `script` object, required
          - `id` integer, required
          - `type` integer, required
          - `name` string, required
          - `ruby` string, required
          - `maxLv` integer, required
          - `iconId` integer, required
          - `motion` integer, required
        - `mstSkillDetail` MstSkillDetail[], required
          - `id` integer, required
          - `detail` string, required
          - `detailShort` string, required
        - `mstSvtSkill` MstSvtSkill[], required
          - `script` object, nullable
          - `strengthStatus` integer, required
          - `svtId` integer, required
          - `num` integer, required
          - `priority` integer, required
          - `skillId` integer, required
          - `condQuestId` integer, required
          - `condQuestPhase` integer, required
          - `condLv` integer
          - `condLimitCount` integer, required
          - `eventId` integer, required
          - `flag` integer, required
        - `mstSkillAdd` MstSkillAdd[], required
          - `skillId` integer, required
          - `priority` integer, required
          - `commonReleaseId` integer, required
          - `name` string, required
          - `ruby` string, required
        - `mstSvtSkillRelease` MstSvtSkillRelease[], required
          - `svtId` integer, required
          - `num` integer, required
          - `priority` integer, required
          - `idx` integer, required
          - `condType` integer, required
          - `condTargetId` integer, required
          - `condNum` integer, required
          - `condGroup` integer, required
        - `mstCommonRelease` MstCommonRelease[], required
          - `id` integer, required
          - `priority` integer, required
          - `condGroup` integer, required
          - `condType` integer, required
          - `condId` integer, required
          - `condNum` integer, required
        - `mstSkillLv` MstSkillLv[], required
          - `funcId` integer[], required
          - `expandedFuncId` FunctionEntityNoReverse[], nullable
            - `mstFunc` MstFunc, required
              - …
            - `mstFuncGroup` MstFuncGroup[], required
              - …
          - `svals` string[], required
          - `script` object, required
          - `skillId` integer, required
          - `lv` integer, required
          - `chargeTurn` integer, required
          - `skillDetailId` integer, required
          - `priority` integer, required
        - `mstSkillGroup` MstSkillGroup[], required
          - `id` integer, required
          - `skillId` integer, required
          - `lv` integer, required
        - `mstSkillGroupOverwrite` MstSkillGroupOverwrite[], required
          - `funcId` integer[], required
          - `svals` string[], required
          - `skillGroupId` integer, required
          - `startedAt` integer, required
          - `endedAt` integer, required
          - `iconId` integer, required
          - `vals` string, required
          - `skillDetailId` integer, required
          - `expandedFuncId` FunctionEntityNoReverse[], nullable
            - `mstFunc` MstFunc, required
              - …
            - `mstFuncGroup` MstFuncGroup[], required
              - …
        - `mstSkillIndividuality` MstSkillIndividuality
          - `individuality` integer[], required
          - `skillId` integer, required
        - `aiIds` object, nullable
        - `reverse` ReversedSkillTdType
          - `raw` ReversedSkillTd
            - `servant` ServantEntity[]
              - …
            - `MC` MysticCodeEntity[]
              - …
            - `CC` CommandCodeEntity[]
              - …
      - `NP` TdEntity[]
        - `mstTreasureDevice` MstTreasureDevice, required
          - `individuality` integer[], required
          - `script` object, required
          - `id` integer, required
          - `seqId` integer, required
          - `name` string, required
          - `ruby` string, required
          - `rank` string, required
          - `maxLv` integer, required
          - `typeText` string, required
          - `attackAttri` integer, required
          - `effectFlag` integer, required
        - `mstTreasureDeviceDetail` MstTreasureDeviceDetail[], required
          - `id` integer, required
          - `detail` string, required
          - `detailShort` string, required
        - `mstSvtTreasureDevice` MstSvtTreasureDevice[], required
          - `damage` integer[], required
          - `strengthStatus` integer, required
          - `treasureDeviceNum` integer, nullable
          - `svtId` integer, required
          - `num` integer, required
          - `priority` integer, required
          - `flag` integer, required
          - `imageIndex` integer, required
          - `treasureDeviceId` integer, required
          - `condQuestId` integer, required
          - `condQuestPhase` integer, required
          - `condLv` integer
          - `condFriendshipRank` integer
          - `motion` integer, required
          - `cardId` integer, required
        - `mstTreasureDeviceLv` MstTreasureDeviceLv[], required
          - `funcId` integer[], required
          - `expandedFuncId` FunctionEntityNoReverse[], nullable
            - `mstFunc` MstFunc, required
              - …
            - `mstFuncGroup` MstFuncGroup[], required
              - …
          - `svals` string[], required
          - `svals2` string[], required
          - `svals3` string[], required
          - `svals4` string[], required
          - `svals5` string[], required
          - `treaureDeviceId` integer, required
          - `lv` integer, required
          - `script` object, nullable
          - `gaugeCount` integer, required
          - `detailId` integer, required
          - `tdPoint` integer, required
          - `tdPointQ` integer, required
          - `tdPointA` integer, required
          - `tdPointB` integer, required
          - `tdPointEx` integer, required
          - `tdPointDef` integer, required
          - `qp` integer, required
        - `mstSvtTreasureDeviceRelease` MstSvtTreasureDeviceRelease[], required
          - `svtId` integer, required
          - `num` integer, required
          - `priority` integer, required
          - `idx` integer, required
          - `condType` integer, required
          - `condTargetId` integer, required
          - `condNum` integer, required
          - `condGroup` integer, required
        - `reverse` ReversedSkillTdType
          - `raw` ReversedSkillTd
            - `servant` ServantEntity[]
              - …
            - `MC` MysticCodeEntity[]
              - …
            - `CC` CommandCodeEntity[]
              - …

## Other responses

- `404` — Item not found
- `422` — Validation Error

---

[API](https://skmtc.dev/atlasacademy/apis/fgo-game-data-api.md) · [All operations](https://skmtc.dev/atlasacademy/apis/fgo-game-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/atlasacademy/fgo-game-data-api/revisions/04f74540589e/schema)
