Add FACEIT#2989
Open
qwerty-3010 wants to merge 1 commit into
Open
Conversation
Contributor
Automatic validation of changes
|
Fix FACEIT JSON syntax Fix FACEIT JSON syntax Fix FACEIT JSON syntax Use FACEIT API endpoint for validation
Contributor
Automatic validation of changes
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
This PR adds support for FACEIT, a leading competitive gaming platform used by Counter-Strike players and esports teams.
The initial implementation relied on profile page detection using
response_url, but GitHub Actions runners consistently encountered FACEIT's anti-bot protection, causing validation to returnWAFinstead of deterministic account status.To address this, the implementation now uses FACEIT's public nickname API endpoint as a probe URL.
Implementation
The FACEIT entry uses:
url: Public player profile URLurlProbe: Public nickname lookup APIerrorType:messageerrorMsg:user not foundThe API endpoint returns structured JSON and does not require authentication:
Existing user
Returns:
{ "result": "OK", "payload": { ... } }Non-existing user
Returns:
{ "errors": [ { "code": "err_nf0", "message": "user not found" } ] }This provides deterministic account detection without relying on profile page scraping or redirects.
Testing
Validated against:
s1mple-Confirmed that the API returns distinct responses for claimed and unclaimed usernames and avoids the WAF issues encountered when probing profile pages directly.