Update account
/v1/accounts
Target audience: Developers
Update account¶
Introduction¶
This endpoint is used for updating an account. If email is changed, this will be reflected in events to 3:rd party systems, the user will however not be notified.
URI¶
Environment | URI |
---|---|
Stage | https://payway-api.stage.adeprimo.se/external/api/v1/accounts |
Production | https://backend.worldoftulo.com/external/api/v1/accounts |
Requirements¶
Identity | Scope |
---|---|
No | /external/account/w |
Parameters¶
Field | Required | Type | Description |
---|---|---|---|
id | Required | String | id of the account to update. Size range: ..24 Allowed values: "/^[a-f\d]{24}$/i" |
Optional | String | The account's e-mail address. Will be used as username for login purposes. This value must be unique. Size range: ..1024 Allowed values: "/\A[\w+-.]+@[a-z\d-]+(.[a-z]+)*.[a-z]+\z/i" |
|
first_name | Optional | String | The account's first name. Size range: ..1024 |
last_name | Optional | String | The account's last name. Size range: ..1024 |
alias | Optional | String | The account alias. Size range: ..1024 Supports: __UNSET__ |
mobile_phone_number | Optional | String | The account's mobile phone number. Allowed values: "/^[+,0]?[0-9]{10,12}$/" |
social_security_number | Optional | String | The account's social security number. This value must be unique. Allowed values: "dddddd-dddd" |
birth_date | Optional | String | The account's birth date. Size range: 10 Allowed values: "YYYY-MM-DD" |
company_registration_number | Optional | String | The account's company registration number. Allowed values: **"dddddd-dddd" |
company_name | Optional | String | The account's company name. Size range: ..1024 |
account_origin | Optional | String | The origin of the account. E.g. the newspaper title. Size range: ..1024 |
address | Optional | Object | Address object. Fields marked as required is always required in order to update any field of the address. |
first_name |
Required | String | First name |
last_name |
Required | String | Last name |
street |
Required | String | Streetname |
building |
Required | String | The building |
country_code |
Required | String | SE, FI or AX |
zip_code |
Required | String | The zipcode |
city |
Required | String | The city |
street_number |
Optional | String | The street number, some subscription-systems only allow numerical values |
staircase |
Optional | String | The staircase/entrance |
floor |
Optional | String | The floor |
apartment_number |
Optional | String | The apartment number |
mobile_number |
Optional | String | The mobile number of the customer |
phone_number |
Optional | String | The phone number of the customer |
citizenship_country_code |
Optional | String | The citizenship country code of the customer |
dropbox |
Optional | String | Dropbox |
company_name |
Optional | String | The name of the company |
company_reference |
Optional | String | The reference of the company |
company_department |
Optional | String | The department of the company |
company_crn |
Optional | String | The CRN of the company |
company_vat_number |
Optional | String | The VAT number of the company |
care_of |
Optional | String | The C/O address, if applicable |
atomic | Optional | Boolean | If true, all or nothing. If false, we save what we can and the errors are accumulated into a Multi-Status response. Default: true |
Curl Example¶
curl --request PUT \
--url https://payway-api.stage.adeprimo.se/external/api/v1/accounts \
--header 'accept: application/json' \
--header 'authorization: Bearer token' \
--header 'content-type: application/json' \
--data '{
"id": "50f3ac249f6aef294d000007",
"email": "adeprimo.servicedesk@no-reply.com",
"first_name": "Adeprimo",
"last_name": "Servicedesk"
}'
Response¶
Field | Description |
---|---|
id | id of the updated account |
updated_fields | Name of the successfully updated fields |
not_updated_fields | Name of the unsuccessfully updated fields |
Example Response¶
HTTP 200 Updated
{
"id": "50f3ac249f6aef294d000007",
"updated_fields": "social_security_number",
"not_updated_fields": "address last_name: must_be_set"
}
Errors¶
Example error response¶
HTTP 400 Bad Request
{
"code": "invalid_parameter",
"field": "email",
"message": "Parameter must match format (?i-mx:\\\\A[\\\\w+\\\\-.]+@[a-z\\\\d\\\\-]+(\\\\.[a-z]+)*\\\\.[a-z]+\\\\z)"
}
HTTP 400 Bad Request¶
Name | Type | Description |
---|---|---|
invalid_parameter | Object | Validation error on any of the fields in the posted json |
json_parser_error | Object | The request body could not be parsed as valid json |
invalid_content_type_error | Object | The requests Content-Type header isn't set to application/json |
unknown_parameter | Object | One or more of the fields in the posted json was not recognized |
HTTP 403 Forbidden¶
Name | Type | Description |
---|---|---|
Object | Not allowed to update email for an administrator. |
HTTP 404 Not Found¶
Name | Type | Description |
---|---|---|
not_found | Object | The package could not be found |
HTTP 500 Internal Server Error¶
Name | Type | Description |
---|---|---|
internal_server_error | Object | Something unexpected happened server side |