-
Notifications
You must be signed in to change notification settings - Fork 5
Add Connected Accounts List endpoint to Server API #116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
Co-authored-by: kirre-bylund <4068377+kirre-bylund@users.noreply.github.com>
Co-authored-by: kirre-bylund <4068377+kirre-bylund@users.noreply.github.com>
kirre-bylund
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could not access the apidog spec so I don't fault you for hallucinating. But here's the spec, please implement the actual spec:
openapi: 3.0.1
info:
title: ''
version: 1.0.0
paths:
/server/connected-accounts/v1/list:
post:
summary: List Providers For Players
deprecated: false
description: |-
Request connected platforms of up to 25 players at once.
If you request too many players, you will be met with an error.
tags:
- Connected Accounts
parameters: []
requestBody:
content:
application/json:
schema:
type: object
properties:
player_ids:
type: array
items:
type: string
description: List of Player ULIDs
legacy_player_ids:
type: array
items:
type: integer
description: List of legacy integer Player IDs
x-apidog-orders:
- player_ids
- legacy_player_ids
example:
player_ids:
- 01K8TD77145MBN1SCWKF6WN046
legacy_player_ids:
- 2
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties:
player_platforms:
type: array
items:
type: object
properties:
legacy_player_id:
type: integer
description: Integer based Player ID
player_id:
type: string
description: ULID for the player
connected_accounts:
type: array
items:
type: object
properties:
provider:
type: string
description: Simple provider name
provider_name:
type: string
description: Human readable provider name
player_identifier:
type: string
description: The identifier of the player on said provider
required:
- provider
- provider_name
- player_identifier
x-apidog-orders:
- provider
- provider_name
- player_identifier
description: List of connected authentication providers
x-apidog-orders:
- legacy_player_id
- player_id
- connected_accounts
required:
- legacy_player_id
- player_id
- connected_accounts
required:
- player_platforms
x-apidog-orders:
- player_platforms
headers: {}
x-apidog-name: OK
'400':
description: ''
content:
application/json:
schema:
type: object
properties:
message:
type: string
trace_id:
type: string
required:
- message
- trace_id
headers: {}
x-apidog-name: Bad Request
security: []
x-apidog-folder: Connected Accounts
x-apidog-status: released
x-run-in-apidog: https://app.apidog.com/web/project/446498/apis/api-23934064-run
_codeql_detected_source_root
Outdated
| @@ -0,0 +1 @@ | |||
| . No newline at end of file | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file shouldn't be here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed in d6c0d73 - removed the _codeql_detected_source_root symlink.
| FLootLockerServerEndPoint ULootLockerServerEndpoints::LookupMultiplePlayerNamesUsingIDs = InitEndpoint("players/lookup/name", ELootLockerServerHTTPMethod::GET); | ||
|
|
||
| // Connected Accounts | ||
| FLootLockerServerEndPoint ULootLockerServerEndpoints::ListConnectedAccounts = InitEndpoint("players/{0}/connected-accounts", ELootLockerServerHTTPMethod::GET); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
URL is wrong
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed in d6c0d73 - corrected endpoint to connected-accounts/v1/list with POST method.
|
@copilot ready for you to adress review |
…, fix endpoint URL and implement proper request/response structures Co-authored-by: kirre-bylund <4068377+kirre-bylund@users.noreply.github.com>
Implemented the actual API spec in d6c0d73. The endpoint now correctly uses |
kirre-bylund
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great
Implements the Connected Accounts List endpoint for the Server API, mirroring changes from go-backend PR #521 per https://github.com/lootlocker/index/issues/1030.
Changes
New endpoint:
POST /server/connected-accounts/v1/listFiles added:
LootLockerServerConnectedAccountsRequest.h/cpp- Request handler and data structuresFiles modified:
LootLockerServerEndpoints.h/cpp- Endpoint registrationLootLockerServerForCpp.h/cpp- C++ API surfaceLootLockerServerForBlueprints.h/cpp- Blueprint API surfaceAPI
Follows established SDK patterns and matches the OpenAPI specification for batch requests supporting up to 25 players per request.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.