> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 엔터티 API 재구성 업그레이드 튜토리얼

> 이전 PlayFabEntityModel API 그룹을 사용하는 PlayFab 코드를 새로운 논리적 엔터티 API 그룹으로 업그레이드하고 C# SDK 마이그레이션 안내를 포함합니다.

## 소개

엔터티 API 그룹에 뭉쳐 있던 API를 [문서 사이트](/services/playfab/api-references)와 PlayFab SDK 모두에서 더 쉽게 사용할 수 있도록 일관성 있는 논리적 그룹으로 재구성했습니다.

즉각적인 영향은 게임에서 엔터티 기반 API를 사용해 왔다면 SDK를 업그레이드할 때 코드를 업데이트해야 한다는 점입니다.

## 사전 요구 사항

이 업그레이드 가이드가 적용되려면 다음 조건이 모두 참이어야 합니다.

1. 엔터티 기반 PlayFab API를 사용하고 있습니다.
2. 2018년 8월 9일 이후에 게시된 PlayFab SDK로 업그레이드했습니다.

<Note>
  서비스 수준의 변경 사항은 *없습니다*. 예를 들어, 이전 SDK를 사용하는 기존 타이틀은 변경 없이 계속 작동합니다.
</Note>

## 업그레이드 방법

이번 변경의 근본적인 영향은 `PlayFabEntityModel` API 그룹이 다음 그림과 같이 논리적으로 연관된 6개의 서로 다른 API 그룹으로 분리되었다는 점입니다.

<img src="https://mintcdn.com/microsoft-4404708b/3hg2JQs0m7qmDqay/images/playfab/live-service-management/game-configuration/entities/tutorials/changes-to-playfabentitymodel-api-group.png?fit=max&auto=format&n=3hg2JQs0m7qmDqay&q=85&s=f40f3a4c1fd1d2721e3b6c1bfde121e9" alt="PlayFabEntityModel API 그룹의 변경 사항" width="460" height="558" data-path="images/playfab/live-service-management/game-configuration/entities/tutorials/changes-to-playfabentitymodel-api-group.png" />

**이전 엔터티 API** -> **새 API** 매핑의 전체 목록은 이 튜토리얼의 [부록 1](#appendix-1-old-to-new-api-mappings)에서 확인할 수 있습니다.

<Note>
  클래식 API 매핑은 영향을 받지 *않았습니다*.
</Note>

다음 섹션에서는 `PlayFabEntityAPIGroup`을 사용하는 C# SDK를 새로운 API 그룹 세트로 업그레이드하는 예제를 안내합니다.

## 업그레이드 예제: C# SDK

애플리케이션을 업그레이드하려면 다음 단계를 따르세요.

**1단계**: 다음과 같이 `PlayFab.EntityModels`를 참조하는 `using` 문을 변경합니다.

```csharp theme={null}
using PlayFab.EntityModels;
using PlayFab.DataModels;
```

이제 전체 엔터티 API 그룹을 가져오는 대신 어떤 API를 가져올지 세부적으로 선택할 수 있습니다.

**2단계**: 새 API에 대한 더 상세한 코딩 예제는 아래와 같으며, 이전에는 어떻게 작성되었는지에 대한 주석이 포함되어 있습니다.

```csharp theme={null}
public async void Example()
{
       var logrequest = new PlayFab.ClientModels.LoginWithCustomIDRequest
       {
           CustomId = "TestExample",
           CreateAccount = true,
       };

       var loginResult = await PlayFab.PlayFabClientAPI.LoginWithCustomIDAsync(logrequest);
       var playfabId = loginResult?.Result?.PlayFabId;

       // PlayFab EntityAPI has been replaced here with the PlayFabProfilesAPI
       // and PlayFab.EntityModels has been replaced with PlayFab.ProfileModels
       var getProfileResult = await PlayFab.PlayFabProfilesAPI.GetProfileAsync(new
       PlayFab.ProfilesModels.GetEntityProfileRequest());
       var profile = getProfileResult?.Result?.Profile;
}
```

이 튜토리얼의 [부록 1](#appendix-1-old-to-new-api-mappings)에 있는 매핑을 사용하여 다른 SDK도 동일한 방식으로 진행합니다.

## 결론

여러분의 피드백을 바탕으로 문서 사이트와 코드에서 엔터티 API를 보다 직관적인 방식으로 노출하게 되어 기쁘게 생각합니다.

질문이나 의견이 있으시면 [PlayFab 포럼](https://community.playfab.com/index.html)을 통해 문의해 주세요.

## 부록 1: 이전에서 새 API로의 매핑

아래에 나열된 모든 API는 *이전에* `PlayFabEntityModel` API 그룹의 일부였습니다. *이제* 다음 새 API 그룹으로 분류됩니다.

### PlayFabProfilesApi

* GetGlobalPolicy
* GetProfile
* GetProfiles
* SetGlobalPolicy
* SetProfilePolicy

### PlayFabAuthenticationApi

* GetEntityToken

### PlayFabDataApi

* AbortFileUploads
* DeleteFiles
* FinalizeFileUploads
* GetFiles
* InitiateFileUploads
* GetObjects
* SetObjects

### PlayFabGroupsApi

* AcceptGroupApplication
* AcceptGroupInvitation
* AddMembers
* ApplyToGroup
* BlockEntity
* ChangeMemberRole
* CreateGroup
* CreateRole
* DeleteGroup
* DeleteRole
* GetEntityToken
* GetGroup
* InviteToGroup
* IsMember
* ListGroupApplications
* ListGroupBlocks
* ListGroupInvitations
* ListGroupMembers
* ListMembershipOpportunities
* RemoveGroupApplication
* RemoveGroupInvitation
* RemoveMembers
* UnblockEntity
* UpdateGroup
* UpdateRole

### PlayFabEventsApi

* WriteEvents

### PlayFabCloudScriptApi

* ExecuteEntityCloudScript


## Related topics

- [GSDK 예제 프로젝트 생성](/ko/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-setup.md)
- [이벤트 파이프라인 튜토리얼](/ko/services/playfab/sdks/c/event-pipeline/eventpipeline-tutorial.md)
- [계정 업그레이드](/ko/services/playfab/pricing/account-upgrades.md)
- [튜토리얼 플레이어 프로필 가져오기](/ko/services/playfab/player-progression/player-data/getting-player-profiles.md)
- [엔터티 마이그레이션 정보](/ko/services/playfab/live-service-management/game-configuration/entities/migration-information.md)
