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

# PFAuthenticationServerLoginWithBattleNetGetResult

> Get the result from a PFAuthenticationServerLoginWithBattleNetAsync call. The PFEntityHandle will always be returned, but the additional info in the PFAuthenticationLoginResult is only returned if a buffer is provided.

Get the result from a PFAuthenticationServerLoginWithBattleNetAsync call. The PFEntityHandle will always be returned, but the additional info in the PFAuthenticationLoginResult is only returned if a buffer is provided.

## Syntax

```cpp theme={null}
HRESULT PFAuthenticationServerLoginWithBattleNetGetResult(  
    XAsyncBlock* async,  
    const PFAuthenticationEntityTokenResponse** entityTokenResponse,  
    size_t bufferSize,  
    void* buffer,  
    const PFAuthenticationLoginResult** result,  
    size_t* bufferUsed  
)  
```

### Parameters

**`async`**   XAsyncBlock\*\
*Inout*

XAsyncBlock for the async operation.

**`entityTokenResponse`**   [PFAuthenticationEntityTokenResponse\*\*](https://docs.xbox.com/services/playfab/api-references/c/pfauthenticationtypes/structs/pfauthenticationentitytokenresponse.md)\
*library-allocated output*

TBD

**`bufferSize`**   size\_t

The size of the buffer for the result object.

**`buffer`**   void\*\
\**Out\_writes\_bytes\_to*(bufferSize,*bufferUsed)*

Byte buffer used for the Login result value and its fields.

**`result`**   [PFAuthenticationLoginResult\*\*](https://docs.xbox.com/services/playfab/api-references/c/pfauthenticationtypes/structs/pfauthenticationloginresult.md)\
*optional, library-allocated output*

Pointer to the LoginResult object.

**`bufferUsed`**   size\_t\*\
*optional output*

The number of bytes in the provided buffer that were used.

### Return value

Type: HRESULT

Result code for this API operation. If the service call is unsuccessful, the result will be E\_PF\_ACCOUNT\_NOT\_FOUND, E\_PF\_BATTLE\_NET\_NOT\_ENABLED\_FOR\_TITLE, E\_PF\_ENCRYPTION\_KEY\_MISSING, E\_PF\_EVALUATION\_MODE\_PLAYER\_COUNT\_EXCEEDED, E\_PF\_INVALID\_AUTH\_TOKEN, E\_PF\_INVALID\_SIGNATURE, E\_PF\_INVALID\_SIGNATURE\_TIME, E\_PF\_INVALID\_TITLE\_ID, E\_PF\_PLAYER\_SECRET\_ALREADY\_CONFIGURED, E\_PF\_PLAYER\_SECRET\_NOT\_CONFIGURED, E\_PF\_REQUEST\_VIEW\_CONSTRAINT\_PARAMS\_NOT\_ALLOWED or any of the global PlayFab Service errors. See doc page "Handling PlayFab Errors" for more details on error handling.

## Remarks

If the PFAuthenticationServerLoginWithBattleNetAsync call fails, entityHandle with be null. Otherwise, the handle must be closed with PFEntityCloseHandle when it is no longer needed. If returned, 'result' is a pointer within 'buffer' and does not need to be freed separately.

## Requirements

**Header:** PFAuthentication.h

## See also

[PFAuthentication members](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/pfauthentication_members.md)


## Related topics

- [PFAuthenticationServerLoginWithBattleNetAsync](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationserverloginwithbattlenetasync.md)
- [Services C API overview - PFAuthentication.h](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/pfauthentication_members.md)
- [PFAuthenticationServerLoginWithBattleNetGetResultSize](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationserverloginwithbattlenetgetresultsize.md)
- [PFAuthenticationLoginWithBattleNetGetResult](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationloginwithbattlenetgetresult.md)
- [PFAuthenticationLoginWithBattleNetGetResultSize](https://docs.xbox.com/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationloginwithbattlenetgetresultsize.md)
