> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.itspropel.com/llms.txt.
> For full documentation content, see https://docs.itspropel.com/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.itspropel.com/_mcp/server.

# Create Customer Location

POST https://crm/customers/%7Bcustomer_id%7D/locations
Content-Type: multipart/form-data

Create a new location for a customer. Supports various location types including service, billing, mailing, and warehouse locations. Automatically geocodes addresses if coordinates are not provided. Can set primary and billing location flags.

Reference: https://docs.itspropel.com/propel-biz/05-crm/customers/customer-location-management/create-customer-location

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: PropelBiz
  version: 1.0.0
paths:
  /crm/customers/%7Bcustomer_id%7D/locations:
    post:
      operationId: create-customer-location
      summary: Create Customer Location
      description: >-
        Create a new location for a customer. Supports various location types
        including service, billing, mailing, and warehouse locations.
        Automatically geocodes addresses if coordinates are not provided. Can
        set primary and billing location flags.
      tags:
        - >-
          subpackage_05Crm.subpackage_05Crm/customers.subpackage_05Crm/customers/customerLocationManagement
      parameters:
        - name: '{{tenant_key_name}}'
          in: header
          required: false
          schema:
            type: string
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/05 CRM_Customers_Customer Location
                  Management_Create Customer Location_Response_201
        '422':
          description: Unprocessable Content
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/PostCrmCustomers%7bcustomer_id%7dLocationsRequestUnprocessableEntityError
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                city:
                  type: string
                  description: 'Required: City name'
                state:
                  type: string
                  description: 'Required: State/Province code'
                country:
                  type: string
                  description: 'Optional: Country code (defaults to US)'
                latitude:
                  type: string
                  description: 'Optional: Latitude coordinate for mapping'
                is_active:
                  type: string
                  description: 'Optional: Location is active (1=yes, 0=no) - defaults to 1'
                longitude:
                  type: string
                  description: 'Optional: Longitude coordinate for mapping'
                is_billing:
                  type: string
                  description: >-
                    Optional: Set as billing location (1=yes, 0=no) - defaults
                    to 0
                is_primary:
                  type: string
                  description: >-
                    Optional: Set as primary location (1=yes, 0=no) - defaults
                    to 0
                postal_code:
                  type: string
                  description: 'Required: ZIP/Postal code'
                contact_name:
                  type: string
                  description: 'Optional: Primary contact name at this location'
                safety_notes:
                  type: string
                  description: 'Optional: Safety considerations for service visits'
                contact_email:
                  type: string
                  description: 'Optional: Primary contact email address'
                contact_phone:
                  type: string
                  description: 'Optional: Primary contact phone number'
                location_type:
                  type: string
                  description: >-
                    Required: Location type (residential, commercial,
                    industrial, agricultural, mixed)
                property_type:
                  type: string
                  description: >-
                    Required: Type of property
                    house,apartment,office,warehouse,factory,retail,other
                address_line_1:
                  type: string
                  description: 'Required: Street address'
                address_line_2:
                  type: string
                  description: 'Optional: Address line 2 (suite, apartment, etc.)'
                location_notes:
                  type: string
                  description: 'Optional: Additional notes about the location'
                access_instructions:
                  type: string
                  description: 'Optional: Special access instructions for technicians'
                is_service_location:
                  type: string
                  description: >-
                    Optional: Location can receive services (1=yes, 0=no) -
                    defaults to 1
                parking_instructions:
                  type: string
                  description: 'Optional: Parking instructions for service visits'
                preferred_visit_time:
                  type: string
                  description: >-
                    Optional: Preferred time for service visits (morning,
                    afternoon, evening)
                special_instructions:
                  type: string
                  description: 'Optional: General special instructions'
              required:
                - city
                - state
                - country
                - latitude
                - is_active
                - longitude
                - is_billing
                - is_primary
                - postal_code
                - contact_name
                - safety_notes
                - contact_email
                - contact_phone
                - location_type
                - property_type
                - address_line_1
                - address_line_2
                - location_notes
                - access_instructions
                - is_service_location
                - parking_instructions
                - preferred_visit_time
                - special_instructions
servers:
  - url: https:/
components:
  schemas:
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAudit:
      type: object
      properties:
        created_at:
          type: string
          format: date-time
        created_by:
          type: integer
        deleted_at:
          description: Any type
        updated_at:
          type: string
          format: date-time
        updated_by:
          type: integer
      required:
        - created_at
        - created_by
        - updated_at
        - updated_by
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAudit
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataFlags:
      type: object
      properties:
        is_billing_address:
          description: Any type
        is_primary_location:
          description: Any type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataFlags
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAccess:
      type: object
      properties:
        gate_code:
          description: Any type
        instructions:
          type: string
        lockbox_code:
          description: Any type
        parking_instructions:
          type: string
      required:
        - instructions
        - parking_instructions
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAccess
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAddress:
      type: object
      properties:
        city:
          type: string
        state:
          type: string
        county:
          description: Any type
        line_1:
          type: string
        line_2:
          type: string
        country:
          type: string
        postal_code:
          type: string
      required:
        - city
        - state
        - line_1
        - line_2
        - country
        - postal_code
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAddress
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataService:
      type: object
      properties:
        area:
          description: Any type
        zone:
          description: Any type
        zone_id:
          description: Any type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataService
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCustomer:
      type: object
      properties:
        id:
          type: integer
        display_name:
          type: string
        business_name:
          description: Any type
        customer_type:
          type: string
      required:
        - id
        - display_name
        - customer_type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCustomer
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataProperty:
      type: object
      properties:
        type:
          type: string
        is_owned:
          description: Any type
        lot_size:
          description: Any type
        occupancy_type:
          description: Any type
        square_footage:
          description: Any type
      required:
        - type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataProperty
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataSeasonal:
      type: object
      properties:
        end_date:
          description: Any type
        is_active:
          description: Any type
        start_date:
          description: Any type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataSeasonal
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataConditions:
      type: object
      properties:
        dog_on_premises:
          description: Any type
        special_hazards:
          description: Any type
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataConditions
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCoordinates:
      type: object
      properties:
        latitude:
          type: number
          format: double
        longitude:
          type: number
          format: double
      required:
        - latitude
        - longitude
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCoordinates
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCreatedByUser:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        email:
          type: string
          format: email
      required:
        - id
        - name
        - email
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCreatedByUser
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataUpdatedByUser:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        email:
          type: string
          format: email
      required:
        - id
        - name
        - email
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataUpdatedByUser
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        id:
          type: string
          format: uuid
        audit:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAudit
        flags:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataFlags
        access:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAccess
        status:
          description: Any type
        address:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataAddress
        service:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataService
        customer:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCustomer
        property:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataProperty
        seasonal:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataSeasonal
        conditions:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataConditions
        coordinates:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCoordinates
        customer_id:
          type: string
          format: uuid
        location_code:
          description: Any type
        location_name:
          description: Any type
        location_type:
          type: string
        created_by_user:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataCreatedByUser
        updated_by_user:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaDataUpdatedByUser
      required:
        - id
        - audit
        - flags
        - access
        - address
        - service
        - customer
        - property
        - seasonal
        - conditions
        - coordinates
        - customer_id
        - location_type
        - created_by_user
        - updated_by_user
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaData
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaMeta:
      type: object
      properties:
        type:
          type: string
        version:
          type: string
        generated_at:
          type: string
          format: date-time
      required:
        - type
        - version
        - generated_at
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaMeta
    05 CRM_Customers_Customer Location Management_Create Customer Location_Response_201:
      type: object
      properties:
        data:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaData
        meta:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaMeta
      required:
        - data
        - meta
      title: >-
        05 CRM_Customers_Customer Location Management_Create Customer
        Location_Response_201
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItemsSource:
      type: object
      properties:
        pointer:
          type: string
      required:
        - pointer
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItemsSource
    CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItems:
      type: object
      properties:
        title:
          type: string
        detail:
          type: string
        source:
          $ref: >-
            #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItemsSource
        status:
          type: string
      required:
        - title
        - detail
        - source
        - status
      title: >-
        CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItems
    PostCrmCustomers%7bcustomer_id%7dLocationsRequestUnprocessableEntityError:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: >-
              #/components/schemas/CrmCustomers7BcustomerId7DLocationsPostResponsesContentApplicationJsonSchemaErrorsItems
      required:
        - errors
      title: >-
        PostCrmCustomers%7bcustomer_id%7dLocationsRequestUnprocessableEntityError

```

## SDK Code Examples

```python 05 CRM_Customers_Customer Location Management_Create Customer Location_example
import requests

url = "https://https/crm/customers/%7Bcustomer_id%7D/locations"

payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nSpringfield\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"state\"\r\n\r\nIL\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nUS\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"latitude\"\r\n\r\n39.7817\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_active\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"longitude\"\r\n\r\n-89.6501\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_billing\"\r\n\r\n0\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_primary\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"postal_code\"\r\n\r\n62704\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_name\"\r\n\r\nJohn Smith\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"safety_notes\"\r\n\r\nBeware of slippery steps during rain.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_email\"\r\n\r\njohn.smith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_phone\"\r\n\r\n+1-217-555-1234\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_type\"\r\n\r\nresidential\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"property_type\"\r\n\r\nhouse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_1\"\r\n\r\n456 Elm Street\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_2\"\r\n\r\nUnit 2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_notes\"\r\n\r\nBackyard access preferred.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"access_instructions\"\r\n\r\nUse the keypad code 4321 at the front door.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_service_location\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"parking_instructions\"\r\n\r\nPark on the street in front of the house.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"preferred_visit_time\"\r\n\r\nafternoon\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"special_instructions\"\r\n\r\nPlease call 30 minutes before arrival.\r\n-----011000010111000001101001--\r\n"
headers = {
    "{{tenant_key_name}}": "{{tenant_key_value1}}|{{tenant_key_value2}}",
    "Content-Type": "multipart/form-data; boundary=---011000010111000001101001"
}

response = requests.post(url, data=payload, headers=headers)

print(response.json())
```

```javascript 05 CRM_Customers_Customer Location Management_Create Customer Location_example
const url = 'https://https/crm/customers/%7Bcustomer_id%7D/locations';
const form = new FormData();
form.append('city', 'Springfield');
form.append('state', 'IL');
form.append('country', 'US');
form.append('latitude', '39.7817');
form.append('is_active', '1');
form.append('longitude', '-89.6501');
form.append('is_billing', '0');
form.append('is_primary', '1');
form.append('postal_code', '62704');
form.append('contact_name', 'John Smith');
form.append('safety_notes', 'Beware of slippery steps during rain.');
form.append('contact_email', 'john.smith@example.com');
form.append('contact_phone', '+1-217-555-1234');
form.append('location_type', 'residential');
form.append('property_type', 'house');
form.append('address_line_1', '456 Elm Street');
form.append('address_line_2', 'Unit 2');
form.append('location_notes', 'Backyard access preferred.');
form.append('access_instructions', 'Use the keypad code 4321 at the front door.');
form.append('is_service_location', '1');
form.append('parking_instructions', 'Park on the street in front of the house.');
form.append('preferred_visit_time', 'afternoon');
form.append('special_instructions', 'Please call 30 minutes before arrival.');

const options = {
  method: 'POST',
  headers: {'{{tenant_key_name}}': '{{tenant_key_value1}}|{{tenant_key_value2}}'}
};

options.body = form;

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go 05 CRM_Customers_Customer Location Management_Create Customer Location_example
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://https/crm/customers/%7Bcustomer_id%7D/locations"

	payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nSpringfield\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"state\"\r\n\r\nIL\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nUS\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"latitude\"\r\n\r\n39.7817\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_active\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"longitude\"\r\n\r\n-89.6501\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_billing\"\r\n\r\n0\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_primary\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"postal_code\"\r\n\r\n62704\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_name\"\r\n\r\nJohn Smith\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"safety_notes\"\r\n\r\nBeware of slippery steps during rain.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_email\"\r\n\r\njohn.smith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_phone\"\r\n\r\n+1-217-555-1234\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_type\"\r\n\r\nresidential\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"property_type\"\r\n\r\nhouse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_1\"\r\n\r\n456 Elm Street\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_2\"\r\n\r\nUnit 2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_notes\"\r\n\r\nBackyard access preferred.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"access_instructions\"\r\n\r\nUse the keypad code 4321 at the front door.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_service_location\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"parking_instructions\"\r\n\r\nPark on the street in front of the house.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"preferred_visit_time\"\r\n\r\nafternoon\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"special_instructions\"\r\n\r\nPlease call 30 minutes before arrival.\r\n-----011000010111000001101001--\r\n")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("{{tenant_key_name}}", "{{tenant_key_value1}}|{{tenant_key_value2}}")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby 05 CRM_Customers_Customer Location Management_Create Customer Location_example
require 'uri'
require 'net/http'

url = URI("https://https/crm/customers/%7Bcustomer_id%7D/locations")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["{{tenant_key_name}}"] = '{{tenant_key_value1}}|{{tenant_key_value2}}'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nSpringfield\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"state\"\r\n\r\nIL\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nUS\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"latitude\"\r\n\r\n39.7817\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_active\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"longitude\"\r\n\r\n-89.6501\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_billing\"\r\n\r\n0\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_primary\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"postal_code\"\r\n\r\n62704\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_name\"\r\n\r\nJohn Smith\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"safety_notes\"\r\n\r\nBeware of slippery steps during rain.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_email\"\r\n\r\njohn.smith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_phone\"\r\n\r\n+1-217-555-1234\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_type\"\r\n\r\nresidential\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"property_type\"\r\n\r\nhouse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_1\"\r\n\r\n456 Elm Street\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_2\"\r\n\r\nUnit 2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_notes\"\r\n\r\nBackyard access preferred.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"access_instructions\"\r\n\r\nUse the keypad code 4321 at the front door.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_service_location\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"parking_instructions\"\r\n\r\nPark on the street in front of the house.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"preferred_visit_time\"\r\n\r\nafternoon\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"special_instructions\"\r\n\r\nPlease call 30 minutes before arrival.\r\n-----011000010111000001101001--\r\n"

response = http.request(request)
puts response.read_body
```

```java 05 CRM_Customers_Customer Location Management_Create Customer Location_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://https/crm/customers/%7Bcustomer_id%7D/locations")
  .header("{{tenant_key_name}}", "{{tenant_key_value1}}|{{tenant_key_value2}}")
  .body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nSpringfield\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"state\"\r\n\r\nIL\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nUS\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"latitude\"\r\n\r\n39.7817\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_active\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"longitude\"\r\n\r\n-89.6501\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_billing\"\r\n\r\n0\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_primary\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"postal_code\"\r\n\r\n62704\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_name\"\r\n\r\nJohn Smith\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"safety_notes\"\r\n\r\nBeware of slippery steps during rain.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_email\"\r\n\r\njohn.smith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_phone\"\r\n\r\n+1-217-555-1234\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_type\"\r\n\r\nresidential\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"property_type\"\r\n\r\nhouse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_1\"\r\n\r\n456 Elm Street\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_2\"\r\n\r\nUnit 2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_notes\"\r\n\r\nBackyard access preferred.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"access_instructions\"\r\n\r\nUse the keypad code 4321 at the front door.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_service_location\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"parking_instructions\"\r\n\r\nPark on the street in front of the house.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"preferred_visit_time\"\r\n\r\nafternoon\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"special_instructions\"\r\n\r\nPlease call 30 minutes before arrival.\r\n-----011000010111000001101001--\r\n")
  .asString();
```

```php 05 CRM_Customers_Customer Location Management_Create Customer Location_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://https/crm/customers/%7Bcustomer_id%7D/locations', [
  'multipart' => [
    [
        'name' => 'city',
        'contents' => 'Springfield'
    ],
    [
        'name' => 'state',
        'contents' => 'IL'
    ],
    [
        'name' => 'country',
        'contents' => 'US'
    ],
    [
        'name' => 'latitude',
        'contents' => '39.7817'
    ],
    [
        'name' => 'is_active',
        'contents' => '1'
    ],
    [
        'name' => 'longitude',
        'contents' => '-89.6501'
    ],
    [
        'name' => 'is_billing',
        'contents' => '0'
    ],
    [
        'name' => 'is_primary',
        'contents' => '1'
    ],
    [
        'name' => 'postal_code',
        'contents' => '62704'
    ],
    [
        'name' => 'contact_name',
        'contents' => 'John Smith'
    ],
    [
        'name' => 'safety_notes',
        'contents' => 'Beware of slippery steps during rain.'
    ],
    [
        'name' => 'contact_email',
        'contents' => 'john.smith@example.com'
    ],
    [
        'name' => 'contact_phone',
        'contents' => '+1-217-555-1234'
    ],
    [
        'name' => 'location_type',
        'contents' => 'residential'
    ],
    [
        'name' => 'property_type',
        'contents' => 'house'
    ],
    [
        'name' => 'address_line_1',
        'contents' => '456 Elm Street'
    ],
    [
        'name' => 'address_line_2',
        'contents' => 'Unit 2'
    ],
    [
        'name' => 'location_notes',
        'contents' => 'Backyard access preferred.'
    ],
    [
        'name' => 'access_instructions',
        'contents' => 'Use the keypad code 4321 at the front door.'
    ],
    [
        'name' => 'is_service_location',
        'contents' => '1'
    ],
    [
        'name' => 'parking_instructions',
        'contents' => 'Park on the street in front of the house.'
    ],
    [
        'name' => 'preferred_visit_time',
        'contents' => 'afternoon'
    ],
    [
        'name' => 'special_instructions',
        'contents' => 'Please call 30 minutes before arrival.'
    ]
  ]
  'headers' => [
    '{{tenant_key_name}}' => '{{tenant_key_value1}}|{{tenant_key_value2}}',
  ],
]);

echo $response->getBody();
```

```csharp 05 CRM_Customers_Customer Location Management_Create Customer Location_example
using RestSharp;

var client = new RestClient("https://https/crm/customers/%7Bcustomer_id%7D/locations");
var request = new RestRequest(Method.POST);
request.AddHeader("{{tenant_key_name}}", "{{tenant_key_value1}}|{{tenant_key_value2}}");
request.AddParameter("undefined", "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"city\"\r\n\r\nSpringfield\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"state\"\r\n\r\nIL\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"country\"\r\n\r\nUS\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"latitude\"\r\n\r\n39.7817\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_active\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"longitude\"\r\n\r\n-89.6501\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_billing\"\r\n\r\n0\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_primary\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"postal_code\"\r\n\r\n62704\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_name\"\r\n\r\nJohn Smith\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"safety_notes\"\r\n\r\nBeware of slippery steps during rain.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_email\"\r\n\r\njohn.smith@example.com\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"contact_phone\"\r\n\r\n+1-217-555-1234\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_type\"\r\n\r\nresidential\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"property_type\"\r\n\r\nhouse\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_1\"\r\n\r\n456 Elm Street\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"address_line_2\"\r\n\r\nUnit 2\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"location_notes\"\r\n\r\nBackyard access preferred.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"access_instructions\"\r\n\r\nUse the keypad code 4321 at the front door.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"is_service_location\"\r\n\r\n1\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"parking_instructions\"\r\n\r\nPark on the street in front of the house.\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"preferred_visit_time\"\r\n\r\nafternoon\r\n-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"special_instructions\"\r\n\r\nPlease call 30 minutes before arrival.\r\n-----011000010111000001101001--\r\n", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift 05 CRM_Customers_Customer Location Management_Create Customer Location_example
import Foundation

let headers = ["{{tenant_key_name}}": "{{tenant_key_value1}}|{{tenant_key_value2}}"]
let parameters = [
  [
    "name": "city",
    "value": "Springfield"
  ],
  [
    "name": "state",
    "value": "IL"
  ],
  [
    "name": "country",
    "value": "US"
  ],
  [
    "name": "latitude",
    "value": "39.7817"
  ],
  [
    "name": "is_active",
    "value": "1"
  ],
  [
    "name": "longitude",
    "value": "-89.6501"
  ],
  [
    "name": "is_billing",
    "value": "0"
  ],
  [
    "name": "is_primary",
    "value": "1"
  ],
  [
    "name": "postal_code",
    "value": "62704"
  ],
  [
    "name": "contact_name",
    "value": "John Smith"
  ],
  [
    "name": "safety_notes",
    "value": "Beware of slippery steps during rain."
  ],
  [
    "name": "contact_email",
    "value": "john.smith@example.com"
  ],
  [
    "name": "contact_phone",
    "value": "+1-217-555-1234"
  ],
  [
    "name": "location_type",
    "value": "residential"
  ],
  [
    "name": "property_type",
    "value": "house"
  ],
  [
    "name": "address_line_1",
    "value": "456 Elm Street"
  ],
  [
    "name": "address_line_2",
    "value": "Unit 2"
  ],
  [
    "name": "location_notes",
    "value": "Backyard access preferred."
  ],
  [
    "name": "access_instructions",
    "value": "Use the keypad code 4321 at the front door."
  ],
  [
    "name": "is_service_location",
    "value": "1"
  ],
  [
    "name": "parking_instructions",
    "value": "Park on the street in front of the house."
  ],
  [
    "name": "preferred_visit_time",
    "value": "afternoon"
  ],
  [
    "name": "special_instructions",
    "value": "Please call 30 minutes before arrival."
  ]
]

let boundary = "---011000010111000001101001"

var body = ""
var error: NSError? = nil
for param in parameters {
  let paramName = param["name"]!
  body += "--\(boundary)\r\n"
  body += "Content-Disposition:form-data; name=\"\(paramName)\""
  if let filename = param["fileName"] {
    let contentType = param["content-type"]!
    let fileContent = String(contentsOfFile: filename, encoding: String.Encoding.utf8)
    if (error != nil) {
      print(error as Any)
    }
    body += "; filename=\"\(filename)\"\r\n"
    body += "Content-Type: \(contentType)\r\n\r\n"
    body += fileContent
  } else if let paramValue = param["value"] {
    body += "\r\n\r\n\(paramValue)"
  }
}

let request = NSMutableURLRequest(url: NSURL(string: "https://https/crm/customers/%7Bcustomer_id%7D/locations")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```