Nuestros clientes empresariales pueden utilizar nuestra API pública para integrar TestGorilla a su ATS o HRIS.
La API de TestGorilla te permite conectar tu cuenta de TestGorilla con otra herramienta de seguimiento de candidatos (ATS, por sus siglas en inglés) o de información de Recursos Humanos (HRIS, por sus siglas en inglés). Puede recuperar las evaluaciones, invitar a los candidatos y obtener los resultados de las pruebas a través de una API basada en HTTP que sigue los principios de REST. Se siguen las reglas del protocolo HTTP, lo que permite el uso de herramientas de cliente HTTP simples como curl. La API está disponible para los propietarios de cuentasen el plan Pro.
En este artículo
- Integraciones disponibles
- Historial de versiones de la API
- Autenticación
- Evaluaciones
-
Invitar a un candidato
- Crear un enlace público para una evaluación
- Activar/desactivar un enlace público
- Invitar a un candidato utilizando su dirección de correo electrónico
- Recuperar la URL personalizada del candidato para realizar la evaluación sin enviarle un correo electrónico de invitación
- Volver a invitar a un candidato utilizando su ID de candidatura
- Candidatos
- Resultados de la prueba
Integraciones disponibles
TestGorilla admite integraciones con los siguientes sistemas ATS:
|
Versiones de la API de TestGorilla
La última versión de la API de TestGorilla es la v1.1:
Versión |
Fecha de inicio |
Disponible hasta |
v1.2 |
19 de febrero de 2022 |
Sin fecha de finalización especificada |
v1.1 |
10 de noviembre de 2021 |
18 de febrero de 2022 |
v1.0 |
23 de septiembre de 2021 |
9 de noviembre de 2021 |
v0.9 |
27 de abril de 2021 |
22 de septiembre de 2021 |
v0.8 |
1 de enero de 2021 |
26 de abril de 2021 |
2. Autenticación
Comunícate con nuestro equipo de Éxito del Cliente para obtener instrucciones sobre la autenticación.
3. Evaluaciones
En TestGorilla distinguimos las evaluaciones de las pruebas. Un candidato realiza una evaluación, que puede consistir en hasta 5 pruebas y hasta 20 preguntas personalizadas, según tu plan.
Los clientes suelen crear una evaluación para un puesto vacante y varios candidatos realizan la misma evaluación.
Lista de evaluaciones
Utiliza el siguiente punto de conexión para recuperar la lista de evaluaciones creadas en TestGorilla:
GET https://app.testgorilla.com/api/assessments/
Parámetros de consulta
estado |
Filtra las evaluaciones en función de su estado. Los valores posibles son nueva, activa, y archivada.
Este parámetro acepta una lista separada por comas. Ejemplo status=new,active Valor predeterminado: recupera todos los estados |
||||||||
orden |
Define el orden de la lista de resultados. Los valores posibles son:
Este parámetro admite el orden ascendente y descendente. El orden predeterminado es ascendente y al agregar el símbolo menos (-), el orden será descendente. Ejemplo ordering=modified lo más nuevo en la parte de abajo ordering=-modified lo más nuevo en la parte de arriba Orden predeterminado: Ordenar por ID de evaluación |
||||||||
límite |
El número de registros a recuperar. Este parámetro se utiliza para la paginación, y define el tamaño de la página. Valor predeterminado: 10 |
||||||||
desplazamiento |
El desplazamiento del primer elemento. Este parámetro se utiliza para la paginación. Ejemplo limit=10&offset=0 primera página de 10 elementos limit=10&offset=10 segunda página de 10 elementos Valor predeterminado: límite=10 y desplazamiento=0 |
Solicitud
curl 'https://app.testgorilla.com/api/assessments/?status=active,new' \
-H 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
{
"count": 27,
"results": [
{
"id": 32,
"name": "Python developer",
"candidates": 42,
"invited": 13,
"started": 8,
"finished": 21,
"status": "active",
"finished_percentage": 50,
"modified": "2021-07-10T15:06:05.719971+00:00"
},
{...}
]
}
Detalles de la evaluación
Utiliza el siguiente punto de conexión para recuperar los detalles de una evaluación específica:
GET https://app.testgorilla.com/api/assessments/<ASSESSMENT_ID>
Solicitud
curl 'https://app.testgorilla.com/api/assessments/<ASSESSMENT_ID>/' \
-H 'authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
{
"id": 32,
"modified": "2021-07-10T15:06:05.719971+00:00"
"name": "Python developer",
"candidates": 42,
"invited": 13,
"started": 8,
"finished": 21,
"status": "active",
"finished_percentage": 50,
"benchmark_name": "All candidates",
...
"public_links": [
{
id: 32,
active: true,
candidates_count: 0,
candidates_limit: 0,
label: "General public link",
public_uuid: "<PUBLIC_LINK_UUID>"
}
],
...
}
Recuperación de los indicadores antitrampas para una evaluación
Sigue los detalles del candidato (enlace de anclaje) para obtener el <TEST_TAKER_ID> del candidato del que quieres recuperar los resultados:
Solicitud
1 curl --location --request GET 'https://app.testgorilla.com/api/assessments/candidates/<TEST_TAKER_ID>/?candidature=<CANDIDATURE_ID>' \
2--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
La respuesta incluye todas las candidaturas asociadas al TEST_TAKER_ID. Los siguientes campos corresponden a los indicadores antitrampas:
- is_exited_full_screen: Verdadero si el candidato abandonó la pantalla de evaluación, Falso de lo contrario.
- is_left_screen: Verdadero si el mouse salió de la pantalla de evaluación, Falso de lo contrario.
- repeated_ip: Verdadero si se ha realizado más de una evaluación desde la misma dirección IP, Falso de lo contrario.
- is_camera_enabled: Verdadero si la cámara está activada durante la evaluación, Falso de lo contrario.
1{
2 "id": <TEST_TAKER_ID>,
3 ...
4 "assessments_detail": [
5 {
6 ...
7 "is_exited_full_screen": false,
8 "is_left_screen": false,
9 "repeated_ip": true,
10 "is_camera_enabled": false,
11 ...
12 }
13 ]
14}
Invitar a un candidato
Una vez creada la evaluación, puedes invitar a los candidatos a realizarla. Cada candidato se identifica con un único ID de persona que realiza la evaluación o por su dirección de correo electrónico. Los candidatos pueden realizar más de una evaluación, pero solo pueden realizarlas una vez.
Hay dos maneras de invitar a los candidatos a realizar las evaluaciones:
- Mediante un enlace público
- De forma individual, con una dirección de correo electrónico y un nombre y apellido opcionales
Consejo: Los candidatos pueden empezar a realizar una o varias pruebas o preguntas personalizadas, abandonar la evaluación y volver más tarde para terminarla. Lo hacen utilizando la misma URL que utilizaron para acceder a la evaluación la primera vez. Esto solo es posible si la evaluación sigue activa. |
Crear un enlace público para una evaluación
Puedes crear un enlace público para invitar a los candidatos utilizando la siguiente plantilla URL.
https://app.testgorilla.com/testtaker/publicinvitation/<PUBLIC_LINK_UUID>
Para obtener el public_uuid de una evaluación específica, debes llamar al punto de conexión de los detalles de la evaluación y elegir el UUID correspondiente. Por ejemplo, puedes usar el enlace público por defecto sacando el primer elemento del atributo public_links para crear el enlace público usando public_links[0].public_uuid.
Activar/desactivar un enlace público
Puedes activar o desactivar un enlace público utilizando el punto de conexión PUT https://app.testgorilla.com/api/assessments/public_links/<PUBLIC_LINK_ID> y asignando verdadero o falso al atributo activo. Una vez desactivado el enlace, no se podrá acceder a la evaluación utilizando la URL.
Solicitud
curl 'https://app.testgorilla.com/api/assessments/public_links/<PUBLIC_LINK_UUID>/' \
-X 'PUT' \
-H 'authorization: Token <YOUR TOKEN GOES HERE>' \
-H 'content-type: application/json' \
--data-binary '{"active":false, "label":"Main", "assessment":<ASSESSMENT_ID>}'
Invitar a un candidato utilizando su dirección de correo electrónico
También puedes invitar a un candidato utilizando su dirección de correo electrónico y su nombre y apellido como cuerpo en la siguiente solicitud de punto de conexión.
POST https://app.testgorilla.com/api/assessments/<ASSESSMENT_ID>/invite_candidate/
Nota: Si bien se recomiendan, el nombre y el apellido son opcionales. |
Solicitud
curl 'https://app.testgorilla.com/api/assessments/<ASSESSMENT_ID>/invite_candidate/' \
-H 'content-type: application/json' \
-H 'Authorization: Token <YOUR TOKEN GOES HERE>' \
--data-binary '{"email":"john@example.com","first_name":"John","last_name":"Smith"}'
Respuesta
{
"id":8000,
"assessment":99,
"email":"john@example.com",
"first_name":"John",
"last_name":"Smith",
"invitation_uuid":"d1bb9864-0515-4543-9bac-f26af0b13895",
"created":"2021-09-29T07:55:14.517886+00:00",
"testtaker_id":9999,
"status":"invited"
}
Para poder recuperar la información sobre este candidato más adelante, se recomienda guardar el valor testtaker_id.
Recuperar la URL personalizada del candidato para realizar la evaluación sin enviarle un correo electrónico de invitación
Si integras TestGorilla en tu propia aplicación y quieres permitir que tus usuarios realicen una evaluación sin el correo electrónico de invitación como paso necesario para iniciarla, necesitas recuperar la URL personalizada para que el candidato realice la evaluación. Esto implica dos pasos.
El primer paso es invitar al candidato y suprimir el correo electrónico de invitación. Puedes hacerlo incluyendo el parámetro no_email en la solicitud de invitación a un candidato. Si envías este parámetro como verdadero, el correo electrónico de invitación no se enviará. Guarda el valor testtaker_id de la respuesta a continuación.
Solicitud
curl 'https://app.testgorilla.com/api/assessments/<ASSESSMENT_ID>/invite_candidate/?no_email=true' \
-H 'content-type: application/json' \
-H 'Authorization: Token <YOUR TOKEN GOES HERE>' \
--data-binary '{"email":"john@example.com","first_name":"John","last_name":"Smith"}'
Respuesta
{
"id":8000,
"assessment":32,
"email":"john@example.com",
"first_name":"John",
"last_name":"Smith",
...
"testtaker_id":9999,
"status":"invited"
}
El segundo paso consiste en utilizar la solicitud de la sección 5.1 para recuperar los detalles de todos los candidatos de esta evaluación, mediante el assessment_id. Mediante el testtaker_id del candidato indicado en el paso 1, podrás encontrar el enlace de invitación.
Volver a invitar a un candidato utilizando su ID de candidatura
Puedes reenviar una invitación a los candidatos utilizando el ID de la candidatura (id). Este ID se creó cuando el candidato fue invitado por primera vez (consulta la sección 4.3). Como alternativa, puedes usar el punto de conexión para listar todos los candidatos como se describe en la sección 5.1 para obtener el id.
Solicitud
curl --location --request POST 'https://app.testgorilla.com/api/assessments/candidature/<ID>/send-invitation/' \
--header 'authorization: Token <YOUR TOKEN GOES HERE>' \
--header 'content-type: application/json' \
--data-raw '{}'
Candidatos
Lista de candidatos invitados a una evaluación
Utiliza el siguientepunto de conexión para recuperar la lista de candidatos invitados a realizar una evaluación.
GET https://app.testgorilla.com/api/assessments/candidature?assessment=<ASSESSMENT_ID>
Parámetros de consulta
evaluación |
El ID de la evaluación a partir del cual se recuperan los candidatos participantes. Este campo es obligatorio. |
||||||||||||||||||||
estado |
Filtra las evaluaciones en función de su estado. Los valores posibles son:
Valor predeterminado: recupera todos los estados |
||||||||||||||||||||
orden |
Define el orden de la lista de resultados. Los valores posibles son:
Este parámetro admite el orden ascendente y descendente. El orden predeterminado es ascendente. Al agregar el símbolo menos (-), el orden será descendente. Ejemplo ordering=created elemento más nuevo en la parte de abajo ordering=-created elemento más nuevo en la parte de arriba Orden predeterminado: por ID del candidato |
||||||||||||||||||||
etapa |
Filtra la lista de candidatos en función de su etapa en el proceso de contratación. Los valores posibles son:
Valor predeterminado: recupera todas las etapas |
||||||||||||||||||||
límite |
El número de registros a recuperar. Este parámetro se utiliza para la paginación, y define el tamaño de la página. Valor predeterminado: 10 |
||||||||||||||||||||
desplazamiento |
El desplazamiento del primer elemento. Este parámetro se utiliza para la paginación. Ejemplo limit=10&offset=0 primera página de 10 elementos limit=10&offset=10 segunda página de 10 elementos Valor predeterminado: límite=10 y desplazamiento=0 |
Solicitud
curl 'https://app.testgorilla.com/api/assessments/candidature/?assessment=<ASSESSMENT_ID>' \
-H 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
"results": [
{
avg_score: 76,
created: "2021-09-18T09:16:33.975663+02:00",
email: "john@example.com",
full_name: "John Smith",
id: 8000,
invitation_uuid: "edb70e44-271d-4e6a-8533-901fdc95f230",
is_hired: false,
personality_algorithm: 'big_5',
personality: "3-3-1-1-1_30-32-28-19-28",
rating: null
review: null
stage: "HIR"
status: "completed"
testtaker_id: 4276,
invitation_link: "https://assessment.testgorilla.com/testtaker/takeinvitation/edb70e44-271d-4e6a-8533-901fdc95f230",
},
{...}
]
}
Nota: Para las evaluaciones con más de una prueba de personalidad, tanto el personality_algorithm como los valores de los atributos de personalidad se extraen de las primeras pruebas de personalidad asociadas a esa evaluación. |
Recuperar los datos del candidato
Este punto de conexión proporciona información sobre el candidato, como su nombre completo, su dirección de correo electrónico, la lista de evaluaciones a las que ha sido invitado y una lista consolidada de las pruebas realizadas.
Atención: Hasta la v0.8 de la API, este punto de conexión devolvía todos los resultados de todas las evaluaciones realizadas históricamente por un candidato específico. Para mejorar la información de los resultados, toda esta información se trasladó al punto de conexión de la API de resultados. |
Solicitud
curl 'https://app.testgorilla.com/api/assessments/candidates/<TESTTAKER_ID>/' \
-H 'authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
{
"count": 20,
"next": "https://app.testgorilla.com/api/assessments/candidates/?limit=10&offset=10",
"previous": null,
"results": [
{
"id": 321321,
"full_name": "John, Doe",
"email": "johndoe@email.com",
"tests": [
# Grouped list of tests
],
"assessments": [
# List of assessments taken by the candidate
{ "assessment_name": "An assessment" }
...
],
"assessments_count": 1,
"last_activity": "2021-02-23T00:12:40.717337+01:00",
...
},
...
]
}
Eliminar un candidato de una evaluación
Este punto de conexión te permitirá eliminar a un candidato de una evaluación. Esto puede ser necesario, por ejemplo, si deseas invitar al candidato a realizar la evaluación por segunda vez.
curl --location --request DELETE 'https://app.testgorilla.com/api/assessments/candidature/<CANDIDATURE_ID>/' \
--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Resultados de la prueba
Recuperar los resultados de la evaluación
Se puede obtener una versión detallada de los resultados de las pruebas de cada candidato para una evaluación específica utilizando el siguiente punto de conexión de la API.
GET https://app.testgorilla.com/api/assessments/results/?candidature__assessment=<ASSESSMENT_ID>&candidature__test_taker=<TESTTAKER_ID>
Parámetros de consulta
candidature_assessment |
Requerido |
ID de la evaluación |
candidature_test_taker |
Requerido |
ID de la persona que hace la prueba |
Solicitud
curl --location --request GET 'https://app.testgorilla.com/api/assessments/results/?candidature__assessment=<ASSESSMENT_ID>&candidature__test_taker=<TEST_TAKER_ID>' \
--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
{
"count": n,
"results": [
{
"id": 123456,
"name": "Big 5 (OCEAN)",
"score": null,
"status": "published",
"completed": true,
"test_id": 494,
"custom_questions": [],
"algorithm": "big_5",
"is_code_test": false,
"score_display": "2-1-1-2-1_32.0-34.0-33.0-35.0-32.0",
...
},
{
"id": 234567,
"name": "Problem solving",
"score": 85,
"status": "filed",
"completed": true,
"test_id": 7244,
"custom_questions": [],
"algorithm": "basic",
"is_code_test": false,
"score_display": "",
...
},
{...}
]
}
Recuperar los resultados de la evaluación en PDF
Obtén la lista de candidatos para una evaluación y utiliza los datos de la respuesta y la siguiente tabla de asignación para completar los datos de la solicitud de abajo para obtener los resultados:
testtaker_id |
TEST_TAKER_ID |
id |
CANDIDATURE_ID |
Solicitud
1 curl --location --request GET 'https://app.testgorilla.com/api/assessments/candidates/<TEST_TAKER_ID>/render_pdf/?candidature=<CANDIDATURE_ID>' \
2-H 'Authorization: Token <YOUR TOKEN GOES HERE>'
Tipos de resultados
Los formatos y representaciones de los resultados de las pruebas están ligados al algoritmo que se utiliza para calcularlos. La siguiente tabla enumera los algoritmos, los atributos utilizados y cómo analizar esos resultados.
Nombre |
Algoritmo |
Atr. del resultado |
Detalles de la prueba |
Básico |
basic |
score |
|
Preguntas personalizadas |
custom_questions |
score |
|
Personalidad |
enneagram disc 16_types big_5 |
score_display |
|
Valor agregado cultural |
culture_fit |
score_display |
Pruebas básicas
Las pruebas básicas son aquellas en las que el atributo del algoritmo es igual a basic. El puntaje de estas pruebas se devuelve en el atributo score.
Preguntas personalizadas
Las preguntas personalizadas están representadas por una prueba extra y los resultados son aquellos en los que el atributo del algoritmo es igual a custom_questions. El puntaje de estas pruebas se devuelve en el atributo score.
Pruebas de personalidad
Prueba de los cinco grandes (OCEAN)
Los resultados de la prueba de personalidad Big 5 son aquellos en los que el atributo del algoritmo es igual a big_5. Para esta prueba, el atributo score_display proporciona dos representaciones diferentes del resultado de la prueba, en una cadena codificada que contiene dos secciones, separadas por "_", concinco valores cada una:
- Sección 1: El puntaje calibrado, desde 1 (Muy baja) a 5 (Muy alta) separadas por “-“
- Sección 2: El puntaje original (sin procesar), en valores decimales separados por “-“
Esos cinco valores corresponden a los cinco factores en el siguiente orden:
- Extroversión
- Amabilidad
- Diligencia
- Estabilidad emocional
- Apertura a la experiencia
Puedes elegir la sección que te interesa al dividir la cadena con '_' (guion bajo). Luego puedes obtener cada resultado individual dividiendo la cadena de nuevo con '-' (guion).
Ejemplo: 2-1-1-2-1_30.0-29.0-33.0-26.0-31.0
- Sección 1: 2-1-1-2-1
- Sección 2: 30.0-29.0-33.0-26.0-31.0
Dentro de TestGorilla, el resultado se parece a la imagen de abajo:
Eneagrama
Los resultados de la prueba de personalidad del Eneagrama son aquellos en los que el atributo del algoritmo es igual a enneagram. Para esta prueba, el atributo score_display tiene uno de los siguientes valores:
- Sin resultados
- Persona que promueve las mejoras
- Persona que da
- Persona con ambiciones
- Persona que contempla
- Persona pionera
- Persona dedicada
- Persona que anima
- Persona experta
- Persona afable
El único valor que no tiene descripción es Sin resultados y dará lugar a una respuesta HTTP 404 si se busca utilizando el punto de conexión de la descripción.
DISC
Los resultados de la prueba de personalidad DISC son aquellos en los que el atributo del algoritmo es igual a disc. Para esta prueba, el atributo score_display tiene uno de los siguientes valores:
d |
i |
s |
c |
di |
is |
sc |
cd |
id |
si |
cs |
dc |
Test de Personalidad 16 Factores (16 PF)
Los resultados de la prueba de las 16 personalidades son aquellos en los que el atributo del algoritmo es igual a 16_types. Para esta prueba, el atributo score_display representa las letras dominantes en 4 escalas: E-I, S-N, T-F y J-P. Como resultado, los valores posibles son:
ESTJ |
ENTJ |
ISTJ |
INTJ |
ESTP |
ENTP |
ISTP |
INTP |
ESFJ |
ENFJ |
ISFJ |
INFJ |
ESFP |
ENFP |
ISFP |
INFP |
Punto de conexión de la descripción de personalidad
Si necesitas un mecanismo para extraer dinámicamente un informe de personalidad, puedes utilizar el punto de conexión de la descripción de personalidad, especificando el algoritmo y el valor correspondiente para obtener información detallada sobre lo que significa cada puntaje específico.
GET https://app.testgorilla.com/api/tests/personality/<ALGORITHM>/<SCORE>
Solicitud
curl --location --request GET 'https://app.testgorilla.com/api/tests/personality/<ALGORITHM>/<SCORE>' \
--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
{
"personality":"..."
}
Por ejemplo, si deseas obtener los detalles de INTJ - El intelectual para las pruebas de las 16 personalidades , debes enviar el algoritmo 16_types y el valor del puntaje utiliza INTJ en la URL.
curl --location --request GET 'https://app.testgorilla.com/api/tests/personality/16_types/INTJ' \
--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Y obtendrás una respuesta como...
{
"personality":"<h2>INTJ – The Intellectual</h2>\n \n <h3>Description</h3>\n
<p>INTJs are systematic, analytical, and intuitive thinkers. Esta
es una combinación rara, y la hace una de las personalidades menos comunes.
... "
}
Pruebas de programación
Recuperar el tiempo que se usó en una prueba de codificación
Sigue la recuperación de los detalles de la evaluación (enlace de anclaje) para obtener el <TEST_RESULT_ID> de la prueba de programación a consultar:
Solicitud
1 curl --location --request GET 'https://app.testgorilla.com/api/assessments/results/<TEST_RESULT_ID>/' \
2 --header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
La respuesta incluye el tiempo total otorgado (duración) y el tiempo que utilizó el candidato (response_time), ambos en segundos.
1{
2 "skill_areas_score":[],
3 "duration":1800.0,
4 "response_time":739
5}
Recuperar la URL de un informe de prueba de programación
Sigue la recuperación de los detalles de la evaluación (enlace de anclaje) para obtener el <TEST_RESULT_ID> de la prueba de programación a consultar:
Solicitud
1curl --location --request GET 'https://app.testgorilla.com/api/assessments/code_questions/<TEST_RESULT_ID>/invitation_token/' \
2--header 'Authorization: Token <YOUR TOKEN GOES HERE>'
Respuesta
La respuesta incluye el informe de código UUID.
1 {"invitation_uuid":"<CODE_REPORT_UUID>"}
El enlace del informe tiene el formato https://app.testgorilla.com/customer/candidates/code-report/<CODE_REPORT_UUID>
Nota: Con las funcionalidades mencionadas, tienes la capacidad de administrar a tus candidatos dentro de tu propio sistema. Para crear evaluaciones y escribir preguntas personalizadas, debes acceder a TestGorilla directamente. |