feat(infra): auto-commit con 88 cambios
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
"""Borra una request REST de una team collection de Hoppscotch.
|
||||
|
||||
Invoca la mutation GraphQL deleteRequest del backend self-hosted. Protegida por
|
||||
GqlAuthGuard: el JWT de sesion viaja en la cookie `access_token`.
|
||||
"""
|
||||
|
||||
import requests
|
||||
|
||||
_MUTATION = "mutation($r:ID!){ deleteRequest(requestID:$r) }"
|
||||
|
||||
|
||||
def hoppscotch_delete_request(
|
||||
request_id: str,
|
||||
*,
|
||||
access_token: str,
|
||||
backend_url: str = "http://localhost:3170",
|
||||
) -> dict:
|
||||
"""Borra una request de Hoppscotch por su ID.
|
||||
|
||||
Args:
|
||||
request_id: ID de la request a borrar.
|
||||
access_token: JWT de sesion (de hoppscotch_login). Viaja en la cookie
|
||||
`access_token`, NO en el header Authorization.
|
||||
backend_url: base del backend Hoppscotch (sin barra final).
|
||||
|
||||
Returns:
|
||||
Dict. En exito: ``{"status": "ok", "deleted": str}``. En error (GraphQL
|
||||
errors, deleteRequest != true, HTTP no 200, transporte):
|
||||
``{"status": "error", "error": str, "data": ...}``.
|
||||
"""
|
||||
payload = {
|
||||
"query": _MUTATION,
|
||||
"variables": {"r": request_id},
|
||||
}
|
||||
|
||||
try:
|
||||
resp = requests.post(
|
||||
f"{backend_url}/graphql",
|
||||
json=payload,
|
||||
cookies={"access_token": access_token},
|
||||
timeout=30.0,
|
||||
)
|
||||
except requests.RequestException as exc:
|
||||
return {"status": "error", "error": f"transport error: {exc}"}
|
||||
|
||||
try:
|
||||
data = resp.json()
|
||||
except ValueError:
|
||||
return {
|
||||
"status": "error",
|
||||
"error": f"non-JSON response (HTTP {resp.status_code})",
|
||||
}
|
||||
|
||||
if data.get("errors"):
|
||||
return {
|
||||
"status": "error",
|
||||
"error": "graphql errors",
|
||||
"data": data,
|
||||
}
|
||||
|
||||
deleted = (data.get("data") or {}).get("deleteRequest")
|
||||
if deleted is not True:
|
||||
return {
|
||||
"status": "error",
|
||||
"error": "deleteRequest did not return true",
|
||||
"data": data,
|
||||
}
|
||||
|
||||
return {"status": "ok", "deleted": request_id}
|
||||
Reference in New Issue
Block a user