/v0.1/merchants/{merchant_code}/membersAdds a member to the merchant account with the specified roles.
By default, sends an invitation email to the provided address. The recipient must accept the invitation to join the account.
When is_managed_user is true, creates a managed user with the provided password and optional nickname and assigns the roles directly, without sending an invitation.
OAuth scopes: Requires one of: user.subaccounts, members.write.
Required permissions:
members_create
Path parameters
Short unique identifier for the merchant.
Example:
"MK10CL2A"
Body parameters
application/jsonrequired- format:
emailmaxLength:256Email address of the member to add.
- maxLength:
64List of roles to assign to the new member.
- is_managed_userboolean
True if the user is managed by the merchant. In this case, we'll created a virtual user with the provided password and nickname.
- passwordstringformat:
passwordminLength:8Password of the member to add. Only used if
is_managed_useris true. In the case of service accounts, the password is not used and can not be defined by the caller. - nicknamestringmaxLength:
64Nickname of the member to add. Only used if
is_managed_useris true. Used for display purposes only.Example:
"Test User" - metadataobject
Set of user-defined key-value pairs attached to the object. Partial updates are not supported. When updating, always submit whole metadata. Maximum of 64 parameters are allowed in the object.
Example:
{} - attributesobject
Object attributes that are modifiable only by SumUp applications.
Example:
{}
Responses
201application/json
Returns the Member object if the creation succeeded.
ID of the member.
Example:
"mem_WZsm7QTPhVrompscmPhoGTXXcrd58fr9MOhP"User's roles.
Example:
["role_admin"]User's permissions.
Example:
["members_read","members_write","create_moto_payments","full_transaction_history_view","refund_transactions","create_referral","developer_settings_edit","developer_settings_access"]- format:
date-timeThe timestamp of when the member was created.
Example:
"2023-01-20T15:16:17Z" - format:
date-timeThe timestamp of when the member was last updated.
Example:
"2023-01-20T15:16:17Z" - Options:
"accepted""pending""expired""disabled""unknown"The status of the membership.
- userobject
Information about the user associated with the membership.
Show 10 properties
Identifier for the End-User (also called Subject).
Example:
"44ca0f5b-813b-46e1-aee7-e6242010662e"- Options:
"user""managed_user""service_account""system_account"Type of the user account.
Example:
"user" End-User's preferred e-mail address. Its value MUST conform to the RFC 5322 [RFC5322] addr-spec syntax. The RP MUST NOT rely upon this value being unique, for unique identification use ID instead.
Example:
"example@sumup.com"True if the user has enabled MFA on login.
Example:
trueTrue if the user is a virtual user (operator).
Example:
falseTrue if the user is a service account.
Example:
false- disabled_atstringformat:
date-timeTime when the user has been disabled. Applies only to virtual users (
virtual_user: true). - nicknamestring
User's nickname. Used for display purposes only.
Example:
"Test User" - picturestringformat:
uriURL of the End-User's profile picture. This URL refers to an image file (for example, a PNG, JPEG, or GIF image file), rather than to a Web page containing an image.
Example:
"https://usercontent.sumup.com/44ca0f5b-813b-46e1-aee7-e6242010662e.png" Classic identifiers of the user.
Show 1 property
- minimum:
0maximum:2147483647
- inviteobject
Pending invitation for membership.
Show 2 properties
- format:
emailEmail address of the invited user.
Example:
"boaty.mcboatface@sumup.com" - format:
date-timeExample:
"2023-01-20T15:16:17Z"
- metadataobject
Set of user-defined key-value pairs attached to the object. Partial updates are not supported. When updating, always submit whole metadata. Maximum of 64 parameters are allowed in the object.
Example:
{} - attributesobject
Object attributes that are modifiable only by SumUp applications.
Example:
{}
400application/problem+json
Invalid request.
- format:
uriA URI reference that identifies the problem type.
Example:
"https://developer.sumup.com/problem/not-found" - titlestring
A short, human-readable summary of the problem type.
Example:
"Requested resource couldn't be found." - statusinteger
The HTTP status code generated by the origin server for this occurrence of the problem.
Example:
404 - detailstring
A human-readable explanation specific to this occurrence of the problem.
Example:
"The requested resource doesn't exist or does not belong to you." - instancestringformat:
uriA URI reference that identifies the specific occurrence of the problem.
404application/problem+json
Merchant not found.
- format:
uriA URI reference that identifies the problem type.
Example:
"https://developer.sumup.com/problem/not-found" - titlestring
A short, human-readable summary of the problem type.
Example:
"Requested resource couldn't be found." - statusinteger
The HTTP status code generated by the origin server for this occurrence of the problem.
Example:
404 - detailstring
A human-readable explanation specific to this occurrence of the problem.
Example:
"The requested resource doesn't exist or does not belong to you." - instancestringformat:
uriA URI reference that identifies the specific occurrence of the problem.
429application/problem+json
Too many invitations were sent to that user and the rate limit was exceeded. The Retry-After header indicates when the client can retry.
- format:
uriA URI reference that identifies the problem type.
Example:
"https://developer.sumup.com/problem/not-found" - titlestring
A short, human-readable summary of the problem type.
Example:
"Requested resource couldn't be found." - statusinteger
The HTTP status code generated by the origin server for this occurrence of the problem.
Example:
404 - detailstring
A human-readable explanation specific to this occurrence of the problem.
Example:
"The requested resource doesn't exist or does not belong to you." - instancestringformat:
uriA URI reference that identifies the specific occurrence of the problem.