Commit 9250ccb4 authored by Alex Kakiris's avatar Alex Kakiris
Browse files

lists providers via GET /api/me/providers

parent c6d5537e
Loading
Loading
Loading
Loading
+14 −1
Changes for capif_backend/backoffice_service/controllers/me_controller.py: 14 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ from flask_jwt_extended import jwt_required

from ..core import invoker_ops, provider_ops
from ..utils.utils import get_capif_token, get_capif_urls, capif_user_required
from ..utils.vault import read_invoker, list_invokers, read_provider, VaultError
from ..utils.vault import read_invoker, list_invokers, list_providers, read_provider, VaultError

me_routes = Blueprint("me_routes", __name__)

@@ -76,6 +76,19 @@ def onboard_provider(user_uuid):
    data, status = provider_ops.onboard(get_capif_token(), user_uuid, ccf_provider_onboarding_url, prov_dom_info)
    return jsonify(data), status

@me_routes.route("/providers", methods=["GET"])
@jwt_required()
@capif_user_required
def list_my_providers(user_uuid):
    # No user input reaches the Vault path here: the uuid comes from the JWT.
    try:
        provider_ids = list_providers(user_uuid)
    except VaultError as e:
        print(f"ERROR: {e}")
        return jsonify({"error": "Could not list providers."}), 500

    return jsonify({"providers": provider_ids}), 200

@me_routes.route("/providers/<api_prov_dom_id>/apis", methods=["POST"])
@jwt_required()
@capif_user_required