diff --git a/README.md b/README.md index 4c489754..4803319e 100644 --- a/README.md +++ b/README.md @@ -714,7 +714,16 @@ If success, 201 with the new alias, for example ```json { - "alias": "www_groupon_com@my_domain.com" + "alias": "www_groupon_com@my_domain.com", + "creation_date": "2020-02-04 16:23:02+00:00", + "creation_timestamp": 1580833382, + "email": "www_groupon_com@my_domain.com", + "id": 4, + "nb_block": 0, + "nb_forward": 0, + "nb_reply": 0, + "enabled": true, + "note": "This is a note" } ``` diff --git a/app/api/views/new_custom_alias.py b/app/api/views/new_custom_alias.py index c097bc1a..2f52fb45 100644 --- a/app/api/views/new_custom_alias.py +++ b/app/api/views/new_custom_alias.py @@ -3,8 +3,10 @@ from flask import jsonify, request from flask_cors import cross_origin from app.api.base import api_bp, verify_api_key +from app.api.views.alias import serialize_alias_info from app.config import MAX_NB_EMAIL_FREE_PLAN, ALIAS_DOMAINS from app.dashboard.views.custom_alias import verify_prefix_suffix +from app.dashboard.views.index import get_alias_info from app.extensions import db from app.log import LOG from app.models import Alias, AliasUsedOn, User, CustomDomain @@ -75,4 +77,4 @@ def new_custom_alias(): AliasUsedOn.create(alias_id=alias.id, hostname=hostname, user_id=alias.user_id) db.session.commit() - return jsonify(alias=full_alias), 201 + return jsonify(alias=full_alias, **serialize_alias_info(get_alias_info(alias))), 201 diff --git a/tests/api/test_new_custom_alias.py b/tests/api/test_new_custom_alias.py index 6e6db5b0..bf3432a6 100644 --- a/tests/api/test_new_custom_alias.py +++ b/tests/api/test_new_custom_alias.py @@ -31,6 +31,18 @@ def test_success(flask_client): assert r.status_code == 201 assert r.json["alias"] == f"prefix.{word}@{EMAIL_DOMAIN}" + # assert returned field + res = r.json + assert "id" in res + assert "email" in res + assert "creation_date" in res + assert "creation_timestamp" in res + assert "nb_forward" in res + assert "nb_block" in res + assert "nb_reply" in res + assert "enabled" in res + assert "note" in res + new_ge = Alias.get_by(email=r.json["alias"]) assert new_ge.note == "test note"