User
The User object can be used to manage your own account and to create child accounts.
Only a Production API Key can be used to make requests against the Users API.
There are two kinds of accounts.
The first is the standard (parent) User object.
It represents your account state, settings, and credentials to log in via the website.
The second is the child User, which is a User that belongs to a parent.
Balance and recharge values on User objects are expressed in higher precision US Dollars.
Parent Users must be created through the web interface.
User object. Top-level Users are defined as Users with no parent.Users{
"id": "user_060ab38db3c04ffaa60f262e5781a9be",
"object": "User",
"parent_id": null,
"name": "EasyPost Docs",
"phone_number": "5555555555",
"verified": true,
"created_at": "2022-10-14T17:23:58Z",
"default_carbon_offset": false,
"has_elevate_access": false,
"balance": "0.00000",
"price_per_shipment": "0.00000",
"recharge_amount": null,
"secondary_recharge_amount": null,
"recharge_threshold": null,
"has_billing_method": null,
"cc_fee_rate": "0.0375",
"default_insurance_amount": null,
"insurance_fee_rate": "0.005",
"insurance_fee_minimum": "0.50",
"email": "dev+easypost-docs@easypost.com",
"children": [
{
"id": "user_0ae8cb7000a1438c8598fa5786fdae84",
"object": "User",
"parent_id": "user_060ab38db3c04ffaa60f262e5781a9be",
"name": "Test User",
"phone_number": "8005550100",
"verified": true,
"created_at": "2022-10-17T17:28:30Z",
"default_carbon_offset": false,
"has_elevate_access": false,
"children": []
}
]
}Production OnlyThis call will only work with your Production API Key.
Each User can be retrieved individually by id.
Any id provided must be either the id of the authenticated User or the id of one of its Child Users.
Additionally, to retrieve the authenticated User directly, no id is required.
1# Retrieve the authenticated user
2curl -X GET https://api.easypost.com/v2/users \
3 -u "EASYPOST_API_KEY":
4
5# Retrieve a child user
6curl -X GET https://api.easypost.com/v2/users/user_... \
7 -u "EASYPOST_API_KEY":1{
2 "id": "user_060ab38db3c04ffaa60f262e5781a9be",
3 "object": "User",
4 "parent_id": null,
5 "name": "EasyPost Docs",
6 "phone_number": "5555555555",
7 "verified": true,
8 "created_at": "2022-10-14T17:23:58Z",
9 "default_carbon_offset": false,
10 "has_elevate_access": false,
11 "balance": "0.00000",
12 "price_per_shipment": "0.00000",
13 "recharge_amount": null,
14 "secondary_recharge_amount": null,
15 "recharge_threshold": null,
16 "has_billing_method": null,
17 "cc_fee_rate": "0.0375",
18 "default_insurance_amount": null,
19 "insurance_fee_rate": "0.005",
20 "insurance_fee_minimum": "0.50",
21 "email": "dev+easypost-docs@easypost.com",
22 "children": [
23 {
24 "id": "user_0ae8cb7000a1438c8598fa5786fdae84",
25 "object": "User",
26 "parent_id": "user_060ab38db3c04ffaa60f262e5781a9be",
27 "name": "Test User",
28 "phone_number": "8005550100",
29 "verified": true,
30 "created_at": "2022-10-17T17:28:30Z",
31 "default_carbon_offset": false,
32 "has_elevate_access": false,
33 "children": []
34 }
35 ]
36}Production OnlyThis call will only work with your Production API Key.
Just like retrieving a User, they can be updated using the same patterns.
Passing an id will allow the update of a Child User or the authenticated User.
Passing no id will update the authenticated User.
Since Child Users also have the ability to authenticate themselves, they can be updated without passing an id.
Child Users may only have their name field updated; all other fields are ignored.
An update request for a User is a partial update.
Only attributes specifically passed in will be updated.
The current_password attribute is required when updating email or password.
Request Parameters
1# Update the authenticated user
2curl -X PATCH https://api.easypost.com/v2/users \
3 -u "EASYPOST_API_KEY": \
4 -H 'Content-Type: application/json' \
5 -d '{
6 "user": {
7 "recharge_threshold": "50.00"
8 }
9 }'
10
11# Update a child user
12curl -X PATCH https://api.easypost.com/v2/users/user_... \
13 -u "EASYPOST_API_KEY": \
14 -H 'Content-Type: application/json' \
15 -d '{
16 "user": {
17 "name": "Test Child"
18 }
19 }'1{
2 "id": "user_060ab38db3c04ffaa60f262e5781a9be",
3 "object": "User",
4 "parent_id": null,
5 "name": "EasyPost Docs",
6 "phone_number": "5555555555",
7 "verified": true,
8 "created_at": "2022-10-14T17:23:58Z",
9 "default_carbon_offset": false,
10 "has_elevate_access": false,
11 "balance": "0.00000",
12 "price_per_shipment": "0.00000",
13 "recharge_amount": null,
14 "secondary_recharge_amount": null,
15 "recharge_threshold": null,
16 "has_billing_method": null,
17 "cc_fee_rate": "0.0375",
18 "default_insurance_amount": null,
19 "insurance_fee_rate": "0.005",
20 "insurance_fee_minimum": "0.50",
21 "email": "dev+easypost-docs@easypost.com",
22 "children": [
23 {
24 "id": "user_0ae8cb7000a1438c8598fa5786fdae84",
25 "object": "User",
26 "parent_id": "user_060ab38db3c04ffaa60f262e5781a9be",
27 "name": "Test User",
28 "phone_number": "8005550100",
29 "verified": true,
30 "created_at": "2022-10-17T17:28:30Z",
31 "default_carbon_offset": false,
32 "has_elevate_access": false,
33 "children": []
34 }
35 ]
36}