reCAPTCHA v3

reCAPTCHA V3

reCAPTCHA v3 est un peu similaire au reCAPTCHA V2. Le reCAPTCHA V3 fonctionne en arrière plan, il ne nécessite pas d’interaction avec l’utilisateur et génère un score basé sur le comportement de l’utilisateur. Plus le score est élevé, plus il est probable que l’utilisateur soit humain. 

V3
Exemple reCAPTCHA V3.

1. Créer une tâche CAPTCHA

La méthode createTask se charge de créer une tâche pour résoudre un type de CAPTCHA.

Adresse: https://api.scraptcha.com/createTask/

Méthode: POST

Content-type: application-json

Propriétés de la requête

Nom

Type

Obligatoire

Description

clientKey

text

oui

Vous pouvez trouver la clé du compte client par ici.

task.type

text

oui

RecaptchaV3TaskProxyless

task.websiteURL

text

oui

Adresse d’une page web cible. Elle peut être située n’importe où sur le site Web, même dans un espace réservé aux membres. Nos collaborateurs ne s’y rendent pas mais simulent la visite.

task.websiteKey

text

oui

Clé du site reCAPTCHA. Vous pouvez lire par ici comment la trouver.

task.minScore

double

oui

Filtre les travailleurs ayant un score particulier. Il peut avoir l’une des valeurs suivantes :
0.3
0.7
0.9

task.pageAction

text

non

La valeur « action » du Recaptcha. Les propriétaires de sites Web utilisent ce paramètre pour définir ce que les utilisateurs font sur la page. Exemple :
grecaptcha.execute(‘site_key’, {action:’login_test’})

task.isEnterprise

boolean

non

Mettez ce drapeau à « true » si vous avez besoin que cette V3 soit résolue avec Enterprise API. La valeur par défaut est « false » et le Recaptcha est résolu avec l’API non-entreprise. Peut être déterminé par un appel javascript comme dans l’exemple suivant :
grecaptcha.enterprise.execute(‘site_key’, {..})

Exemple de la requête

POST /createTask HTTP/1.1
Host: api.scraptcha.com
Content-Type: application/json

{
« clientKey »: « YOUR_API_KEY »,
« task »: {
« type »: « RecaptchaV3TaskProxyless »,
« websiteURL »: « http://mywebsite.com/recaptcha/test.php »,
« websiteKey »: « 6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16 »,
« minScore »: 0.3,
« pageAction »: « verify »,
« isEnterprise »: false
}
}

Structure de réponse

  • success
  • error

Le serveur retournera errorId = 0 et taskId en cas succès.

{
       "errorId": 0,
       "taskId": 123456
}

le serveur retournera errorId > 0 et errorCode

{
      "errorId": 1,
      "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
       "errorDescription": "ERROR_KEY_DOES_NOT_EXIST"
}

2. Demander un résultat de tâche

Address: https://api.scraptcha.com/getTaskResult

Method: POST

Content-type: application-json

Propriétés de la requête

Nom

Type

Obligatoire

Description

clientKey

text

oui

Vous pouvez trouver la clé du compte client par ici.

taskId

number

oui

Un identifiant « taskId » obtenu dans la méthode createTask.

Exemple de la requête

POST /getTaskResult HTTP/1.1
Host: api.scraptcha.com
Content-Type: application/json

{
         « clientKey »: « YOUR_API_KEY »,
         « taskId »: 123456
}

Structure de réponse

  • success
  • processing
  • error
{
"errorId": 0,
"status": 200,
"solution": {
"gRecaptchaResponse": "3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQim...."
}
}

{
"errorId": 0,
"status": "processing"
}

{
"errorId": 1,
"errorCode": "ERROR_CAPTCHA_UNSOLVABLE",
"errorDescription": "ERROR_CAPTCHA_UNSOLVABLE"
}

  • errorId = 0 et status = ready : Résolu avec succès, lire le résultat dans solution.gRecaptchaResponse.
  • errorId = 0 et status = processing : La tâche n’est pas encore prête, attendre 2s puis refaire.
  • errorId > 0 : identificateur d’erreur. Code d’erreur et courte description transférés dans les propriétés errorCode et errorDescription.