> ## 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.

# PFAuthenticationLoginWithCustomIDRequest

> PFAuthenticationLoginWithCustomIDRequest data model. It is highly recommended that developers ensure that it is extremely unlikely that a customer could.

PFAuthenticationLoginWithCustomIDRequest data model. It is highly recommended that developers ensure that it is extremely unlikely that a customer could generate an ID which is already in use by another customer. If this is the first time a user has signed in with the Custom ID and CreateAccount is set to true, a new PlayFab account will be created and linked to the Custom ID. In this case, no email or username will be associated with the PlayFab account. Otherwise, if no PlayFab account is linked to the Custom ID, an error indicating this will be returned, so that the title can guide the user through creation of a PlayFab account.

## Syntax

```cpp theme={null}
typedef struct PFAuthenticationLoginWithCustomIDRequest {  
    bool createAccount;  
    const char* customId;  
    PFStringDictionaryEntry const* customTags;  
    uint32_t customTagsCount;  
    PFGetPlayerCombinedInfoRequestParams const* infoRequestParameters;  
    const char* playerSecret;  
} PFAuthenticationLoginWithCustomIDRequest;  
```

### Members

**`createAccount`**   bool

Automatically create a PlayFab account if one is not currently linked to this ID.

**`customId`**   const char\*<br />*is null-terminated*

Custom unique identifier for the user, generated by the title.

**`customTags`**   PFStringDictionaryEntry const\*<br />*may be nullptr*

(Optional) The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).

**`customTagsCount`**   uint32\_t

Count of customTags

**`infoRequestParameters`**   PFGetPlayerCombinedInfoRequestParams const\*<br />*may be nullptr*

(Optional) Flags for which pieces of info to return for the user.

**`playerSecret`**   const char\*<br />*is null-terminated*

(Optional) Player secret that is used to verify API request signatures (Enterprise Only).

## Requirements

**Header:** PFAuthenticationTypes.h

## See also

[PFAuthenticationTypes members](/services/playfab/api-references/c/pfauthenticationtypes/pfauthenticationtypes_members)


## Related topics

- [PFAuthenticationLoginWithCustomIDAsync](/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationloginwithcustomidasync.md)
- [PFAuthenticationReLoginWithCustomIDAsync](/services/playfab/api-references/c/pfauthentication/functions/pfauthenticationreloginwithcustomidasync.md)
- [Services C API overview - PFAuthenticationTypes.h](/services/playfab/api-references/c/pfauthenticationtypes/pfauthenticationtypes_members.md)
- [PFAuthenticationLoginWithServerCustomIdRequest](/services/playfab/api-references/c/pfauthenticationtypes/structs/pfauthenticationloginwithservercustomidrequest.md)
- [PFAuthenticationLoginWithPSNRequest](/services/playfab/api-references/c/pfauthenticationtypes/structs/pfauthenticationloginwithpsnrequest.md)
