auth.v1.SocialVerificationService
StartSocialVerification
Start or restart social verification by issuing a new challenge code.
Request
curl --request POST \ \
--url 'https://api.testnet.polyester.com/auth.v1.SocialVerificationService/StartSocialVerification' \
--header 'Content-Type: application/json' \
--header 'Connect-Protocol-Version: 1' \
--data '{
"handle": "polyester_trader",
"method": "METHOD_PROFILE",
"provider": "TWITTER"
}'Responses
{
"challengeCode": "POLY-VERIFY-7K2M",
"expiresAt": "2025-01-01T00:00:00Z",
"verification": {
"attempts": 1,
"challengeCode": "POLY-VERIFY-7K2M",
"errorCode": "AUTH_USERNAME_INVALID",
"expiresAt": "2025-01-01T00:00:00Z",
"handle": "polyester_trader",
"id": "1",
"lastError": "The profile could not be verified.",
"method": "METHOD_PROFILE",
"provider": "TWITTER",
"providerUserId": "123456789012345678",
"requestedAt": "2025-01-01T00:00:00Z",
"status": "STATUS_PENDING_USER_ACTION",
"updatedAt": "2025-01-01T00:00:00Z",
"verifiedAt": "2025-01-01T00:00:00Z"
}
}auth.v1.StartSocialVerificationRequestauth.v1.StartSocialVerificationResponseProvider account to verify.
Verification method. If unspecified, profile verification is used for X/Twitter and channel verification is used for Discord.
Provider handle the user claims. Required for X/Twitter and omitted for Discord, where the authenticated bot supplies the provider identity. A leading "@" is accepted and removed from X/Twitter handles.
Newly issued challenge code the user must submit according to the verification method.
Time in UTC when the challenge code expires. Social verification challenges expire after 15 minutes.
Verification identifier.
Provider account being verified.
Method used for this verification. If unspecified at start time, the provider default is used.
Provider handle being verified. Handles are returned lowercase and without a leading "@".
Stable provider-side user identifier. Empty until verification succeeds.
Challenge code the user must submit according to the verification method. Discord codes are returned only when a challenge is issued. Codes expire after 15 minutes.
Current verification status.
Time in UTC when the current challenge code was issued.
Time in UTC when the current challenge code expires.
Time in UTC when verification succeeded. Empty until status is STATUS_VERIFIED.
Number of recorded provider-check attempts for this challenge.
Last verification error, if the most recent check failed. Empty when there is no recorded error.
Stable machine-readable error code for the current failed verification. AUTH_UNSPECIFIED when no typed error applies.
Time in UTC when this verification state last changed.
| Key | HTTP status | Connect code | Error | When |
|---|---|---|---|---|
| unauthenticated | 401 | unauthenticated | Unauthenticated | Authentication required. |
| permission-denied | 403 | permission_denied | Permission Denied | Permission denied. |
| invalid-argument | 400 | invalid_argument | Invalid Argument | Invalid argument. |
| not-found | 404 | not_found | Not Found | Not found. |
| unavailable | 503 | unavailable | Unavailable | Service unavailable. |