Add Address
POST /customers/{customer_id}/addresses
Create a new customer address.
Roles
Users with the following roles may access this endoint:
Dispatcher
Breaking Changes
No breaking changes.
Request
- Sample Request
- Sample Response
POST /customers/{customer_id}/addresses/
Authorization: Bearer {your-auth-token}
Content-Type: application/json
x-tenant-id: {your-tenant-id}
{
"country": "US",
"is_billing": true,
"is_shipping": true,
"latitude": 48.076273,
"line_1": "345 B Street",
"locality": "Sequim",
"longitude": -123.117185,
"postcode": "98368",
"region": "WA"
}
Access-Control-Allow-Headers: Authorization, Accept, X-TENANT-ID, Content-Type
Access-Control-Allow-Methods: GET,POST
Access-Control-Allow-Origin: *
Allow: GET,POST
Content-Length: 294
Content-Type: application/json
Date: Sat, 20 Aug 2022 01:36:53 GMT
Server: WSGIServer/0.2 CPython/3.9.5
X-API-VERSION: 2019/02/08
X-REQUEST-ID: e0e4412f-3406-44b5-a610-0dfcc62e408b
{
"country": "US",
"id": 107604,
"is_active": true,
"is_billing": true,
"is_physical": true,
"is_shipping": true,
"latitude": 48.076273,
"line_1": "345 B Street",
"line_2": null,
"line_3": null,
"line_4": null,
"locality": "Sequim",
"longitude": -123.117185,
"postcode": "98368",
"region": "WA"
}
Path Parameters
customer_id Integer, Required
Customer identifier.
Query Parameters
No query parameters.
Request Headers
Refer to StandardRequestHeadersModel for more details.
authorization String, Required
Authorization header (bearer with access token). See the Authentication Guide to get started.
- Matches ^bearer [a-z0-9-_=]+.[a-z0-9-_=]+.?[a-z0-9-_.+/=]*$
- No longer than 256 characters.
- At least 1 characters long.
Content-Type String, Optional
Default Value: application/json
One of the following MIME types:
- "application/json" Refer to the JSON Spec.
x-api-version String, Optional
Request identifier.
- At least 1 and no more than 64 characters.
- Must be a valid API version string (2019/02/08, 2021/04/07, 2021/05/07, 2021/08/02, 2021/11/04, 2023/04/19).
x-tenant-id Integer, Required
Tenant identifier. Contact CRO Software for more info if you don't already have this id. See list tenant ids for info on listing the tenants you have access to.
Request Body
Refer to CreateCustomerAddressModel for more details.
country String, Required
Country code (ISO 3166-1 alpha 2).
- 2 character country code.
is_billing Boolean, Required
If true, this is the customer's billing address.
- One of 0, 1, True, False (case insensitive).
is_shipping Boolean, Required
Customer's shipping address if true.
- One of 0, 1, True, False (case insensitive).
latitude Float, Required
Latitude.
- Less than or equal to 90.
- Greater than or equal to -90.
line_1 String, Required
Street address.
- At least 1 and no more than 256 characters.
line_2 String, Optional
Street address line 2.
- At least 0 and no more than 256 characters.
line_3 String, Optional
Street address line 3.
- At least 0 and no more than 256 characters.
line_4 String, Optional
Street address line 4 (doubles as county).
- At least 0 and no more than 256 characters.
locality String, Required
Address locality (e.g. city).
- At least 1 and no more than 86 characters.
longitude Float, Required
longitude.
- Less than or equal to 180.
- Greater than or equal to -180.
postcode String, Required
Postal code (may include letters and symbols).
- At least 1 and no more than 86 characters.
region String, Required
Address region (e.g. state).
- At least 1 and no more than 32 characters.
Response
Response Headers
Refer to StandardResponseHeadersModel for more details.
Content-Type String, Optional
Default Value: application/json
One of the following MIME types:
- "application/json" Refer to the JSON Spec.
x-api-version String
Request identifier.
- At least 1 and no more than 64 characters.
- Must be a valid API version string (2019/02/08, 2021/04/07, 2021/05/07, 2021/08/02, 2021/11/04, 2023/04/19).
x-request-id String
Request identifier.
- Valid UUID.
Response Body
Refer to CustomerAddressModel for more details.
country String
Country code (ISO 3166-1 alpha 2).
- 2 character country code.
id Integer
Customer address identifier.
is_active Boolean
Records marked inactive are treated as deleted (soft delete).
- One of 0, 1, True, False (case insensitive).
is_billing Boolean
If true, this is the customer's billing address.
- One of 0, 1, True, False (case insensitive).
is_physical Boolean
Physical address if true.
- One of 0, 1, True, False (case insensitive).
is_shipping Boolean
Customer's shipping address if true.
- One of 0, 1, True, False (case insensitive).
latitude Float
Latitude.
- Less than or equal to 90.
- Greater than or equal to -90.
line_1 String
Street address.
- At least 1 and no more than 256 characters.
line_2 String
Street address line 2.
- At least 0 and no more than 256 characters.
line_3 String
Street address line 3.
- At least 0 and no more than 256 characters.
line_4 String
Street address line 4 (doubles as county).
- At least 0 and no more than 256 characters.
locality String
Address locality (e.g. city).
- At least 1 and no more than 86 characters.
longitude Float
longitude.
- Less than or equal to 180.
- Greater than or equal to -180.
postcode String
Postal code (may include letters and symbols).
- At least 1 and no more than 86 characters.
region String
Address region (e.g. state).
- At least 1 and no more than 32 characters.
Code Samples
- cURL
- Python
- CSharp 2.0
curl --request POST --include \
--header "Authorization: Bearer {your-auth-token}" \
--header "Content-Type: application/json" \
--header "x-tenant-id: {your-tenant-id}" \
--data '{"country": "US", "is_billing": true, "is_shipping": true, "latitude": 48.076273, "line_1": "345 B Street", "locality": "Sequim", "longitude": -123.117185, "postcode": "98368", "region": "WA"}' \
127.0.0.1:8003/customers/{customer_id}/addresses
import requests, json
body = '''
{
"country": "US",
"is_billing": true,
"is_shipping": true,
"latitude": 48.076273,
"line_1": "345 B Street",
"locality": "Sequim",
"longitude": -123.117185,
"postcode": "98368",
"region": "WA"
}
'''
response = requests.post(
'http://localhost:8003/customers/{customer_id}/addresses',
headers={
'Authorization': 'Bearer {your-auth-token}',
'Content-Type': 'application/json',
'x-tenant-id': '{your-tenant-id}'
},
params={
},
data=body
)
results = json.loads(response.text)
print(results)
using System;
using System.Net;
using System.Collections.Specialized;
namespace CROSoftware
{
public class DemoClient
{
static public void Main ()
{
WebClient client = new WebClient();
// URL
String url = "/customers/{customer_id}/addresses";
// Headers
client.Headers.Add("Authorization", "Bearer {your-auth-token}");
client.Headers.Add("Content-Type", "application/json");
client.Headers.Add("x-tenant-id", "{your-tenant-id}");
// Body
String body = "{\"country\": \"US\", \"is_billing\": true, \"is_shipping\": true, \"latitude\": 48.076273, \"line_1\": \"345 B Street\", \"locality\": \"Sequim\", \"longitude\": -123.117185, \"postcode\": \"98368\", \"region\": \"WA\"}";
String json = client.UploadString(url, "post", body);
Console.WriteLine(json);
}
}
}