# Create warehouse

Create a warehouse location that you can use to create shipping items by simply passing in the generated warehouse id.
If the return address is not supplied in the request body then it is assumed that the origin address is the return address as well

Endpoint: POST /v1/warehouses
Version: 1.1.202604070904
Security: api_key

## Request fields (application/json):

  - `is_default` (boolean,null)
    Designates which single warehouse is the default on the account

  - `name` (string, required)
    Name of the warehouse
    Example: "Zero Cool HQ"

  - `origin_address` (object, required)
    The origin address of the warehouse

  - `origin_address.name` (string, required)
    The name of a contact person at this address.  This field may be set instead of - or in addition to - the company_name field.
    Example: "John Doe"

  - `origin_address.phone` (string)
    The phone number of a contact person at this address.  The format of this phone number varies depending on the country.
    Example: "+1 204-253-9411 ext. 123"

  - `origin_address.email` (string,null)
    Email for the address owner.
    Example: "example@example.com"

  - `origin_address.company_name` (string,null)
    If this is a business address, then the company name should be specified here.
    Example: "The Home Depot"

  - `origin_address.address_line1` (string, required)
    The first line of the street address.  For some addresses, this may be the only line.  Other addresses may require 2 or 3 lines.
    Example: "1999 Bishop Grandin Blvd."

  - `origin_address.address_line2` (string,null)
    The second line of the street address.  For some addresses, this line may not be needed.
    Example: "Unit 408"

  - `origin_address.address_line3` (string,null)
    The third line of the street address.  For some addresses, this line may not be needed.
    Example: "Building #7"

  - `origin_address.city_locality` (string, required)
    The name of the city or locality
    Example: "Winnipeg"

  - `origin_address.state_province` (string, required)
    The state or province.  For some countries (including the U.S.) only abbreviations are allowed.  Other countries allow the full name or abbreviation.
    Example: "Manitoba"

  - `origin_address.postal_code` (string, required)
    postal code
    Example: "78756-3717"

  - `origin_address.country_code` (string)
    The two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
    Example: "CA"

  - `origin_address.address_residential_indicator` (string)
    Indicates whether this is a residential address.
    Enum: "unknown", "yes", "no"

  - `return_address` (object)
    The return address associated with the warehouse

  - `return_address.name` (string, required)
    The name of a contact person at this address.  This field may be set instead of - or in addition to - the company_name field.
    Example: "John Doe"

  - `return_address.phone` (string)
    The phone number of a contact person at this address.  The format of this phone number varies depending on the country.
    Example: "+1 204-253-9411 ext. 123"

  - `return_address.email` (string,null)
    Email for the address owner.
    Example: "example@example.com"

  - `return_address.company_name` (string,null)
    If this is a business address, then the company name should be specified here.
    Example: "The Home Depot"

  - `return_address.address_line1` (string, required)
    The first line of the street address.  For some addresses, this may be the only line.  Other addresses may require 2 or 3 lines.
    Example: "1999 Bishop Grandin Blvd."

  - `return_address.address_line2` (string,null)
    The second line of the street address.  For some addresses, this line may not be needed.
    Example: "Unit 408"

  - `return_address.address_line3` (string,null)
    The third line of the street address.  For some addresses, this line may not be needed.
    Example: "Building #7"

  - `return_address.city_locality` (string, required)
    The name of the city or locality
    Example: "Winnipeg"

  - `return_address.state_province` (string, required)
    The state or province.  For some countries (including the U.S.) only abbreviations are allowed.  Other countries allow the full name or abbreviation.
    Example: "Manitoba"

  - `return_address.postal_code` (string, required)
    postal code
    Example: "78756-3717"

  - `return_address.country_code` (string)
    The two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
    Example: "CA"

  - `return_address.address_residential_indicator` (string)
    Indicates whether this is a residential address.
    Enum: "unknown", "yes", "no"

## Response 200 fields (application/json):

  - `warehouse_id` (string, required)
    A string that uniquely identifies the warehouse
    Example: "se-28529731"

  - `is_default` (boolean,null)
    Designates which single warehouse is the default on the account

  - `name` (string, required)
    Name of the warehouse
    Example: "Zero Cool HQ"

  - `created_at` (string, required)
    Timestamp that indicates when the warehouse was created
    Example: "2019-06-25T18:12:35.583Z"

  - `origin_address` (object, required)
    The origin address of the warehouse

  - `origin_address.name` (string, required)
    The name of a contact person at this address.  This field may be set instead of - or in addition to - the company_name field.
    Example: "John Doe"

  - `origin_address.phone` (string)
    The phone number of a contact person at this address.  The format of this phone number varies depending on the country.
    Example: "+1 204-253-9411 ext. 123"

  - `origin_address.email` (string,null)
    Email for the address owner.
    Example: "example@example.com"

  - `origin_address.company_name` (string,null)
    If this is a business address, then the company name should be specified here.
    Example: "The Home Depot"

  - `origin_address.address_line1` (string, required)
    The first line of the street address.  For some addresses, this may be the only line.  Other addresses may require 2 or 3 lines.
    Example: "1999 Bishop Grandin Blvd."

  - `origin_address.address_line2` (string,null)
    The second line of the street address.  For some addresses, this line may not be needed.
    Example: "Unit 408"

  - `origin_address.address_line3` (string,null)
    The third line of the street address.  For some addresses, this line may not be needed.
    Example: "Building #7"

  - `origin_address.city_locality` (string, required)
    The name of the city or locality
    Example: "Winnipeg"

  - `origin_address.state_province` (string, required)
    The state or province.  For some countries (including the U.S.) only abbreviations are allowed.  Other countries allow the full name or abbreviation.
    Example: "Manitoba"

  - `origin_address.postal_code` (string, required)
    postal code
    Example: "78756-3717"

  - `origin_address.country_code` (string)
    The two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
    Example: "CA"

  - `origin_address.address_residential_indicator` (string)
    Indicates whether this is a residential address.
    Enum: "unknown", "yes", "no"

  - `return_address` (object, required)
    The return address associated with the warehouse

  - `return_address.name` (string, required)
    The name of a contact person at this address.  This field may be set instead of - or in addition to - the company_name field.
    Example: "John Doe"

  - `return_address.phone` (string)
    The phone number of a contact person at this address.  The format of this phone number varies depending on the country.
    Example: "+1 204-253-9411 ext. 123"

  - `return_address.email` (string,null)
    Email for the address owner.
    Example: "example@example.com"

  - `return_address.company_name` (string,null)
    If this is a business address, then the company name should be specified here.
    Example: "The Home Depot"

  - `return_address.address_line1` (string, required)
    The first line of the street address.  For some addresses, this may be the only line.  Other addresses may require 2 or 3 lines.
    Example: "1999 Bishop Grandin Blvd."

  - `return_address.address_line2` (string,null)
    The second line of the street address.  For some addresses, this line may not be needed.
    Example: "Unit 408"

  - `return_address.address_line3` (string,null)
    The third line of the street address.  For some addresses, this line may not be needed.
    Example: "Building #7"

  - `return_address.city_locality` (string, required)
    The name of the city or locality
    Example: "Winnipeg"

  - `return_address.state_province` (string, required)
    The state or province.  For some countries (including the U.S.) only abbreviations are allowed.  Other countries allow the full name or abbreviation.
    Example: "Manitoba"

  - `return_address.postal_code` (string, required)
    postal code
    Example: "78756-3717"

  - `return_address.country_code` (string)
    The two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1)
    Example: "CA"

  - `return_address.address_residential_indicator` (string)
    Indicates whether this is a residential address.
    Enum: "unknown", "yes", "no"

## Response 400 fields (application/json):

  - `request_id` (string, required)
    A UUID that uniquely identifies the request id.
This can be given to the support team to help debug non-trivial issues that may occur
    Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009"

  - `errors` (array, required)
    The errors associated with the failed API call

  - `errors.error_source` (string, required)
    The source of the error, as indicated by the name this informs us if the API call failed because of the
carrier, the order source, or the ShipEngine API itself.
    Enum: "carrier", "order_source", "shipengine"

  - `errors.error_type` (string, required)
    The type of error
    Enum: "account_status", "business_rules", "validation", "security", "system", "integrations"

  - `errors.error_code` (string, required)
    The error code specified for the failed API Call
    Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned", "file_not_found", "shipping_rule_not_found", "service_not_determined", "no_rates_returned", "funding_source_registration_in_progress", "insurance_failure", "funding_source_missing_configuration", "funding_source_error", "freight_connection_inactive", "freight_provider_id_required", "freight_provider_already_connected", "freight_shipment_not_found", "freight_tracking_not_available", "freight_tracking_not_found", "freight_shipment_not_batchable"

  - `errors.message` (string, required)
    An error message associated with the failed API call
    Example: "Body of request cannot be null."

  - `errors.carrier_id` (string)
    A string that uniquely identifies the carrier that generated the error.
    Example: "se-28529731"

  - `errors.carrier_code` (string)
    The name of the shipping carrier that generated the error, such as fedex, dhl_express, stamps_com, etc.
    Example: "dhl_express"

  - `errors.field_name` (string)
    The name of the field that caused the error
    Example: "shipment.ship_to.phone_number"


