For the complete documentation index, see llms.txt. This page is also available as Markdown.

Sales | Customer Locations

List locations of a customer

get

Retrieve a list of locations related to the customer specified in the url parameter.

You can only access customers of your provider entity.

Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the locations.

Query parameters
searchstringOptional

Filter the result by searching for name

sortBystring · enumOptional

Parameters according to which a location can be sorted.

Possible values:
sortOrderstring · enumOptional

Order in which the result of a list request is sorted.

Possible values:
offsetinteger · int32Optional

Specifies the index of the first item to return

Default: 0
limitinteger · int32Optional

Specifies the maximum number of items to return (min: 1; max: 1000)

Default: 100
Responses
200

OK: The requested locations.

application/json
totalinteger · int32Required
get/v1/sales/customers/{customerId}/locations
GET /v1/sales/customers/{customerId}/locations HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "previous": {
    "href": "text",
    "method": "text"
  },
  "next": {
    "href": "text",
    "method": "text"
  },
  "items": [
    {
      "created": "2026-01-01T00:00:00.000Z",
      "address": {
        "line1": "equipme GmbH",
        "street": "W 55th St",
        "number": "240",
        "addition": "3rd floor",
        "city": "New York",
        "postalCode": "10019",
        "countryCode": "US",
        "regionCode": "NY",
        "regionName": "New York",
        "dependentLocality": "Chilmington Green",
        "phoneNumber": "+1 212-555-1234",
        "id": 83,
        "self": {
          "href": "text",
          "method": "text"
        }
      },
      "managers": [
        {
          "managerPolicy": "text",
          "id": 1,
          "firstName": "Pierce",
          "lastName": "Bell",
          "fullName": "text",
          "email": "p.bell@foo.io",
          "username": "j.doe@foo.inc",
          "costCenter": "4645-2343",
          "costCenterId": 1,
          "self": {
            "href": "text",
            "method": "text"
          }
        }
      ],
      "metadataItems": [
        {
          "value": "EQ1337555",
          "scope": "Supplier",
          "key": "ExternalSystemId",
          "self": {
            "href": "text",
            "method": "text"
          }
        }
      ],
      "costCenter": {
        "description": "text",
        "id": 1,
        "code": "text",
        "self": {
          "href": "text",
          "method": "text"
        }
      },
      "id": 1,
      "name": "HQ New York",
      "type": "location",
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "total": 1,
  "self": {
    "href": "text",
    "method": "text"
  }
}

Create a location for a customer

post

The location will be related to the customer given in the url parameter.

You can only create locations for customers of your provider entity.

Creating an office location will also create a warehouse location with the same name and address.

If you have activated "system products/services" for your provider tenant, an instance of the "Site Management" system service will be added to the customer's approval cart.

Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the location.

Body
namestring · max: 100Required

The name of the location.

Example: foo Inc.
costCenterIdinteger · int32 · nullableOptional

Location cost center

Responses
201

Created: The created location.

application/json
createdstring · date-timeOptional

The date and time the data record was created.

idinteger · int32Required

The identifier of the company location.

Example: 1
namestring · max: 100Required

The name of the company location.

Example: HQ New York
typestring · enumRequired

The type of location.

Possible values:
post/v1/sales/customers/{customerId}/locations
POST /v1/sales/customers/{customerId}/locations HTTP/1.1
X-API-KEY: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 360

{
  "name": "foo Inc.",
  "address": {
    "line1": "equipme GmbH",
    "street": "W 55th St",
    "number": "240",
    "addition": "3rd floor",
    "city": "New York",
    "postalCode": "10019",
    "countryCode": "US",
    "regionCode": "NY",
    "regionName": "New York",
    "dependentLocality": "Chilmington Green",
    "phoneNumber": "+1 212-555-1234"
  },
  "managers": [
    {
      "employeeId": 1,
      "role": "location-executive"
    }
  ],
  "costCenterId": 1
}
{
  "created": "2026-01-01T00:00:00.000Z",
  "address": {
    "line1": "equipme GmbH",
    "street": "W 55th St",
    "number": "240",
    "addition": "3rd floor",
    "city": "New York",
    "postalCode": "10019",
    "countryCode": "US",
    "regionCode": "NY",
    "regionName": "New York",
    "dependentLocality": "Chilmington Green",
    "phoneNumber": "+1 212-555-1234",
    "id": 83,
    "self": {
      "href": "text",
      "method": "text"
    }
  },
  "managers": [
    {
      "managerPolicy": "text",
      "id": 1,
      "firstName": "Pierce",
      "lastName": "Bell",
      "fullName": "text",
      "email": "p.bell@foo.io",
      "username": "j.doe@foo.inc",
      "costCenter": "4645-2343",
      "costCenterId": 1,
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "metadataItems": [
    {
      "value": "EQ1337555",
      "scope": "Supplier",
      "key": "ExternalSystemId",
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "costCenter": {
    "description": "text",
    "id": 1,
    "code": "text",
    "self": {
      "href": "text",
      "method": "text"
    }
  },
  "id": 1,
  "name": "HQ New York",
  "type": "location",
  "self": {
    "href": "text",
    "method": "text"
  }
}

Retrieve a single location by its id

get

The requested location must be related to the customer given in the url parameter otherwise it can not be found.

You can only access locations of customers of your provider entity.

Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the location.

locationIdinteger · int32Required

The identifier of the location.

Responses
200

OK: The requested location.

application/json
createdstring · date-timeOptional

The date and time the data record was created.

idinteger · int32Required

The identifier of the company location.

Example: 1
namestring · max: 100Required

The name of the company location.

Example: HQ New York
typestring · enumRequired

The type of location.

Possible values:
get/v1/sales/customers/{customerId}/locations/{locationId}
GET /v1/sales/customers/{customerId}/locations/{locationId} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "created": "2026-01-01T00:00:00.000Z",
  "address": {
    "line1": "equipme GmbH",
    "street": "W 55th St",
    "number": "240",
    "addition": "3rd floor",
    "city": "New York",
    "postalCode": "10019",
    "countryCode": "US",
    "regionCode": "NY",
    "regionName": "New York",
    "dependentLocality": "Chilmington Green",
    "phoneNumber": "+1 212-555-1234",
    "id": 83,
    "self": {
      "href": "text",
      "method": "text"
    }
  },
  "managers": [
    {
      "managerPolicy": "text",
      "id": 1,
      "firstName": "Pierce",
      "lastName": "Bell",
      "fullName": "text",
      "email": "p.bell@foo.io",
      "username": "j.doe@foo.inc",
      "costCenter": "4645-2343",
      "costCenterId": 1,
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "metadataItems": [
    {
      "value": "EQ1337555",
      "scope": "Supplier",
      "key": "ExternalSystemId",
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "costCenter": {
    "description": "text",
    "id": 1,
    "code": "text",
    "self": {
      "href": "text",
      "method": "text"
    }
  },
  "id": 1,
  "name": "HQ New York",
  "type": "location",
  "self": {
    "href": "text",
    "method": "text"
  }
}
Deprecated

Update an existing location (deprecated - please use the PATCH route instead)

put

Overwrites all existing data with that from the request body.

Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the location.

locationIdinteger · int32Required

The identifier of the location to be updated.

Body
namestring · max: 100Required

The name of the location.

Example: foo Inc.
addressIdinteger · int32 · nullableOptional
costCenterIdinteger · int32 · nullableOptional

Location Cost Center

Responses
204

NoContent: Request has succeeded.

No content

put/v1/sales/customers/{customerId}/locations/{locationId}
PUT /v1/sales/customers/{customerId}/locations/{locationId} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 372

{
  "name": "foo Inc.",
  "address": {
    "line1": "equipme GmbH",
    "street": "W 55th St",
    "number": "240",
    "addition": "3rd floor",
    "city": "New York",
    "postalCode": "10019",
    "countryCode": "US",
    "regionCode": "NY",
    "regionName": "New York",
    "dependentLocality": "Chilmington Green",
    "phoneNumber": "+1 212-555-1234"
  },
  "managers": [
    {
      "employeeId": 1,
      "role": "location-manager"
    }
  ],
  "addressId": 1,
  "costCenterId": 1
}

No content

Delete a location

delete

Deletes the location entity with its instance in the approval cart.

The delete operation can only be executed as long as the related system service instance is not ordered nor processed and there are no other relations depending on the location (e.g. employees).

Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the location.

locationIdinteger · int32Required

The identifier of the location to be deleted.

Responses
204

NoContent: Request has succeeded.

No content

delete/v1/sales/customers/{customerId}/locations/{locationId}
DELETE /v1/sales/customers/{customerId}/locations/{locationId} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*

No content

patch
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required
locationIdinteger · int32Required
Query parameters
updateInstancesCostCenterbooleanOptionalDefault: true
Bodyobject · Operation[]
valueany · nullableOptional
pathstring · nullableOptional
opstring · nullableOptional
fromstring · nullableOptional
Responses
204

No Content

No content

patch/v1/sales/customers/{customerId}/locations/{locationId}
PATCH /v1/sales/customers/{customerId}/locations/{locationId} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 887

[
  {
    "op": "add",
    "path": "/name",
    "value": "foo Inc."
  },
  {
    "op": "add",
    "path": "/address/line1",
    "value": "equipme GmbH"
  },
  {
    "op": "add",
    "path": "/address/street",
    "value": "W 55th St"
  },
  {
    "op": "add",
    "path": "/address/number",
    "value": "240"
  },
  {
    "op": "add",
    "path": "/address/addition",
    "value": "3rd floor"
  },
  {
    "op": "add",
    "path": "/address/city",
    "value": "New York"
  },
  {
    "op": "add",
    "path": "/address/postalCode",
    "value": "10019"
  },
  {
    "op": "add",
    "path": "/address/countryCode",
    "value": "US"
  },
  {
    "op": "add",
    "path": "/address/regionCode",
    "value": "NY"
  },
  {
    "op": "add",
    "path": "/address/regionName",
    "value": "New York"
  },
  {
    "op": "add",
    "path": "/address/dependentLocality",
    "value": "Chilmington Green"
  },
  {
    "op": "add",
    "path": "/address/phoneNumber",
    "value": "+1 212-555-1234"
  },
  {
    "op": "add",
    "path": "/managers/-",
    "value": {
      "employeeId": 1,
      "role": "location-manager"
    }
  },
  {
    "op": "add",
    "path": "/managers/0",
    "value": {}
  },
  {
    "op": "add",
    "path": "/costCenterId",
    "value": 123
  }
]

No content

Get all metadata entries for a location

get
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required
locationIdinteger · int32Required
Responses
200

Ok

No content

get/v1/sales/customers/{customerId}/locations/{locationId}/metadata
GET /v1/sales/customers/{customerId}/locations/{locationId}/metadata HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*

No content

Create a metadata entry for a location

post
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

The identifier of the customer which owns the group.

locationIdinteger · int32Required
Body

DTO for creating a new metadata entry for a given resource which implements the logic

keystring · max: 150 · nullableOptional

Key for the new metadata entry

valuestring · max: 500 · nullableOptional

Metadata value

Responses
201

Created: The created metadata entry.

application/json
valuestring · max: 500 · nullableOptional

Metadata value

Example: EQ1337555
scopestring · nullableOptional

Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.

Example: Supplier
keystring · max: 150Required

Metadata key used as a unique identifier for the metadata item.

Example: ExternalSystemId
post/v1/sales/customers/{customerId}/locations/{locationId}/metadata
POST /v1/sales/customers/{customerId}/locations/{locationId}/metadata HTTP/1.1
X-API-KEY: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 29

{
  "key": "text",
  "value": "text"
}
{
  "value": "EQ1337555",
  "scope": "Supplier",
  "key": "ExternalSystemId",
  "self": {
    "href": "text",
    "method": "text"
  }
}

Get a metadata entry for a location

get
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required
locationIdinteger · int32Required
keystringRequired
Responses
200

Ok

application/json
valuestring · max: 500 · nullableOptional

Metadata value

Example: EQ1337555
scopestring · nullableOptional

Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.

Example: Supplier
keystring · max: 150Required

Metadata key used as a unique identifier for the metadata item.

Example: ExternalSystemId
get/v1/sales/customers/{customerId}/locations/{locationId}/metadata/{key}
GET /v1/sales/customers/{customerId}/locations/{locationId}/metadata/{key} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*
{
  "value": "EQ1337555",
  "scope": "Supplier",
  "key": "ExternalSystemId",
  "self": {
    "href": "text",
    "method": "text"
  }
}

Delete a metadata entry for a location

delete
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required
locationIdinteger · int32Required
keystringRequired
Responses
204

NoContent

No content

delete/v1/sales/customers/{customerId}/locations/{locationId}/metadata/{key}
DELETE /v1/sales/customers/{customerId}/locations/{locationId}/metadata/{key} HTTP/1.1
X-API-KEY: YOUR_API_KEY
Accept: */*

No content

Search for specific locations based on metadata key and value. Multiple keys can be provided.

post
Authorizations
X-API-KEYstringRequired

Required for authorization in every request. You can request an API-Key for your tenant in the integrations section of the equipme App.

Path parameters
customerIdinteger · int32Required

Customer data scope

Body
metadataScopestring · enumOptionalPossible values:
Responses
200

OK

application/json
totalinteger · int32Required
post/v1/sales/customers/{customerId}/locations/search
POST /v1/sales/customers/{customerId}/locations/search HTTP/1.1
X-API-KEY: YOUR_API_KEY
Content-Type: application/json-patch+json
Accept: */*
Content-Length: 152

{
  "metadataScope": "Supplier",
  "metaDataFilter": [
    {
      "value": "EQ1337555",
      "scope": "Supplier",
      "key": "ExternalSystemId",
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ]
}
{
  "previous": {
    "href": "text",
    "method": "text"
  },
  "next": {
    "href": "text",
    "method": "text"
  },
  "items": [
    {
      "created": "2026-01-01T00:00:00.000Z",
      "address": {
        "line1": "equipme GmbH",
        "street": "W 55th St",
        "number": "240",
        "addition": "3rd floor",
        "city": "New York",
        "postalCode": "10019",
        "countryCode": "US",
        "regionCode": "NY",
        "regionName": "New York",
        "dependentLocality": "Chilmington Green",
        "phoneNumber": "+1 212-555-1234",
        "id": 83,
        "self": {
          "href": "text",
          "method": "text"
        }
      },
      "managers": [
        {
          "managerPolicy": "text",
          "id": 1,
          "firstName": "Pierce",
          "lastName": "Bell",
          "fullName": "text",
          "email": "p.bell@foo.io",
          "username": "j.doe@foo.inc",
          "costCenter": "4645-2343",
          "costCenterId": 1,
          "self": {
            "href": "text",
            "method": "text"
          }
        }
      ],
      "metadataItems": [
        {
          "value": "EQ1337555",
          "scope": "Supplier",
          "key": "ExternalSystemId",
          "self": {
            "href": "text",
            "method": "text"
          }
        }
      ],
      "costCenter": {
        "description": "text",
        "id": 1,
        "code": "text",
        "self": {
          "href": "text",
          "method": "text"
        }
      },
      "id": 1,
      "name": "HQ New York",
      "type": "location",
      "self": {
        "href": "text",
        "method": "text"
      }
    }
  ],
  "total": 1,
  "self": {
    "href": "text",
    "method": "text"
  }
}

Last updated

Was this helpful?