| hoppscotch_run_request |
function |
py |
infra |
1.0.0 |
impure |
def hoppscotch_run_request(method: str, url: str, *, title: str | None = None, headers: dict | None = None, body: str | None = None, body_type: str | None = None, variables: dict | None = None, access_token: str, backend_url: str = "http://localhost:3170", record_history: bool = True, timeout_s: float = 30.0, verify_tls: bool = True) -> dict |
Ejecuta una peticion HTTP real (resolviendo placeholders <<var>>/{{var}} con un dict de variables) y la registra en el UserHistory de un Hoppscotch self-hosted via la mutation GraphQL createUserHistory, para que el humano la vea aparecer en vivo en la pestana History de su GUI (subscription userHistoryCreated). La request se ejecuta con las variables resueltas, pero en el History se guarda SIN resolver (con los literales <<var>>) igual que en el editor. resMetadata minimo: statusCode + duration. El access_token va como cookie, no como header Authorization. |
| hoppscotch |
| flow-replay |
| http |
|
| build_hoppscotch_collection_py_infra |
|
|
|
false |
error_go_core |
|
| name |
desc |
| method |
metodo HTTP de la peticion (GET, POST, ...). |
|
| name |
desc |
| url |
endpoint de la peticion. Puede contener placeholders <<var>> o {{var}} que se resuelven con `variables` antes de ejecutar. |
|
| name |
desc |
| title |
nombre visible de la request en el History. None = derivar de method + path via build_hoppscotch_collection. |
|
| name |
desc |
| headers |
dict name->value de cabeceras. Sus values tambien admiten placeholders <<var>>/{{var}}. |
|
| name |
desc |
| body |
cuerpo de la peticion como texto ya serializado. Admite placeholders. None = sin cuerpo. |
|
| name |
desc |
| body_type |
tipo de cuerpo para el HoppRESTRequest del History: 'json' | 'form' | 'raw' | None. |
|
| name |
desc |
| variables |
dict name->value para resolver los placeholders al EJECUTAR. Una variable que falte deja el literal intacto. None = no se resuelve nada. |
|
| name |
desc |
| access_token |
JWT de sesion (de hoppscotch_login). Viaja en la cookie access_token, NO en el header Authorization. Necesario para registrar en el History. |
|
| name |
desc |
| backend_url |
base del backend Hoppscotch self-host sin barra final. La mutation cuelga de {backend_url}/graphql. Default http://localhost:3170. |
|
| name |
desc |
| record_history |
si True y hay access_token, registra la request ejecutada en el UserHistory via createUserHistory. Default True. |
|
| name |
desc |
| timeout_s |
timeout en segundos de la peticion HTTP ejecutada (y del POST de History). Default 30.0. |
|
| name |
desc |
| verify_tls |
verificacion del certificado TLS de la peticion ejecutada. Default True. |
|
|
dict. En exito de la ejecucion HTTP: {status: 'ok', status_code: int, duration_ms: int, response_body: str (truncado a 5000 chars), response_headers: dict, recorded: bool, history_id: str|None}. Si la ejecucion fue ok pero el registro de History fallo, status sigue 'ok', recorded False y se anade history_error. Si la ejecucion HTTP falla (RequestException): {status: 'error', error: str, recorded: False}. Nunca lanza por errores de red esperables. |
true |
| test_ejecuta_resolviendo_variables_angle |
| test_ejecuta_resolviendo_variables_brace |
| test_record_history_registra_request_sin_resolver |
| test_record_history_false_no_llama_create_user_history |
| test_request_exception_status_error |
| test_variable_faltante_conserva_literal |
|
python/functions/infra/hoppscotch_run_request_test.py |
python/functions/infra/hoppscotch_run_request.py |