| hoppscotch_create_request |
function |
py |
infra |
1.0.0 |
impure |
def hoppscotch_create_request(collection_id: str, method: str, url: str, *, title: str | None = None, headers: dict | None = None, body: str | None = None, body_type: str | None = None, team_id: str | None = None, access_token: str, backend_url: str = "http://localhost:3170") -> dict |
Crea una request REST dentro de una team collection de Hoppscotch self-hosted via la mutation GraphQL createRequestInCollection. Construye el HoppRESTRequest canonico reusando build_hoppscotch_collection del registry y lo envia como json string en el campo request del input. La mutation esta protegida por GqlAuthGuard: el JWT de sesion (de hoppscotch_login) viaja en la cookie access_token. Algunas versiones del backend exigen team_id dentro del input. |
| hoppscotch |
| flow-replay |
| http |
| infra |
| crud |
|
| build_hoppscotch_collection_py_infra |
|
|
|
false |
error_go_core |
|
| name |
desc |
| collection_id |
ID de la team collection donde insertar la request. |
|
| name |
desc |
| method |
metodo HTTP de la request (GET, POST, PUT, ...). Se normaliza a mayusculas por build_hoppscotch_collection. |
|
| name |
desc |
| url |
endpoint completo de la request (con query string si aplica). |
|
| name |
desc |
| title |
nombre visible de la request en la GUI de Hoppscotch. None = derivar de method + path (p.ej. 'GET /ping'). |
|
| name |
desc |
| headers |
dict name->value de cabeceras de la request. None = sin cabeceras. |
|
| name |
desc |
| body |
cuerpo de la request como texto YA serializado (no se re-serializa). None = sin cuerpo. |
|
| name |
desc |
| body_type |
tipo de cuerpo: 'json' | 'form' | 'raw' | None. Determina el contentType del HoppRESTRequest. |
|
| name |
desc |
| team_id |
ID de la team duena de la collection. Requerido por las versiones del backend cuyo CreateTeamRequestInput exige teamID (el self-host de referencia lo exige). Si el backend no lo pide, None. |
|
| name |
desc |
| access_token |
JWT de sesion (de hoppscotch_login). Viaja en la cookie access_token, NO en el header Authorization. |
|
| name |
desc |
| backend_url |
base del backend Hoppscotch sin barra final. El endpoint GraphQL es {backend_url}/graphql. Default http://localhost:3170. |
|
|
dict. En exito: {status: 'ok', id: str, title: str} con el ID de la request creada. En error (GraphQL errors, respuesta no JSON, sin id, o fallo de transporte): {status: 'error', error: str, data: <cuerpo GraphQL si lo hubo>}. Nunca lanza por errores de red esperables. |
true |
| test_golden_crea_request_y_devuelve_id |
| test_body_json_se_serializa_en_el_request |
| test_team_id_se_incluye_en_data |
| test_team_id_omitido_no_aparece_en_data |
| test_error_graphql_errors |
|
python/functions/infra/hoppscotch_create_request_test.py |
python/functions/infra/hoppscotch_create_request.py |