namespace _espe.api { /** */ export function register_member_create( rest_subject : lib_plankton.rest.type_rest ) : void { lib_plankton.rest.register< _espe.service.member.type_value, _espe.service.member.type_id >( rest_subject, lib_plankton.http.enum_method.post, "/member/create", { "description": "erstellt ein neues Mitglied und gibt die erzeugte ID aus", "input_schema": () => ({ "type": "object", "nullable": false, "additionalProperties": false, "properties": { "membership_number": { "type": "string", "nullable": false, }, "name_real_value": { "type": "string", "nullable": false, }, "email_address_private_value": { "type": "string", "nullable": true, }, }, "required": [ "membership_number", "name_real_value", ] }), "output_schema": () => ({ "type": "number", "nullable": false, }), "restriction": restriction_logged_in, "execution": async ({"input": input}) => { const member_value : _espe.service.member.type_value = { "membership_number": input.membership_number, "name_real_value": input.name_real_value, "name_real_extension": null, "email_address_private_value": input.email_address_private_value, "enabled": false, "name_display": null, "name_login": null, "password_image": null, "email_address_numberbased_use": false, "email_address_namebased_use": false, "email_redirect_to_private": false, "salutation": null, "registered": false, }; const member_id : _espe.service.member.type_id = await _espe.service.member.add(member_value); return Promise.resolve({ "status_code": 201, "data": member_id }); } } ); } }