Create or update location
POST
/locations
const url = 'https://safe-api.safetyradar.com/v2/locations';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","name":"example","description":"example","address1":"example","address2":"example","city":"example","state":"example","zip":"example","latitude":1,"longitude":1,"status":"active","parentId":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","externalId":"example","createdAt":"example","updatedAt":"example","deletedAt":"example","tagIds":["2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://safe-api.safetyradar.com/v2/locations \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "description": "example", "address1": "example", "address2": "example", "city": "example", "state": "example", "zip": "example", "latitude": 1, "longitude": 1, "status": "active", "parentId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "externalId": "example", "createdAt": "example", "updatedAt": "example", "deletedAt": "example", "tagIds": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ] }'Create a new location or update an existing one if externalId matches (upsert behavior)
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
id
string format: uuid
name
required
string
description
string
address1
string
address2
string
city
string
state
string
zip
string
latitude
number
longitude
number
status
string
parentId
string format: uuid
externalId
External identifier for upsert behavior
string
createdAt
string
updatedAt
string
deletedAt
string
tagIds
Array<string>
Responses
Section titled “Responses”Location updated (existing location found by externalId)
Media typeapplication/json
object
data
required
object
id
required
string format: uuid
organizationId
required
string format: uuid
name
required
string
description
required
string
slug
required
string
address1
required
string
address2
required
string
city
required
string
state
required
string
zip
required
string
latitude
required
number
longitude
required
number
status
required
string
type
required
string
parentId
required
string format: uuid
externalId
required
string
createdById
required
string format: uuid
lastEditedById
required
string format: uuid
searchText
createdAt
required
string
updatedAt
required
string
deletedAt
required
string
Example
{ "data": { "status": "active", "type": "equipment" }}Location created
Media typeapplication/json
object
data
required
object
id
required
string format: uuid
organizationId
required
string format: uuid
name
required
string
description
required
string
slug
required
string
address1
required
string
address2
required
string
city
required
string
state
required
string
zip
required
string
latitude
required
number
longitude
required
number
status
required
string
type
required
string
parentId
required
string format: uuid
externalId
required
string
createdById
required
string format: uuid
lastEditedById
required
string format: uuid
searchText
createdAt
required
string
updatedAt
required
string
deletedAt
required
string
Example
{ "data": { "status": "active", "type": "equipment" }}Bad request (e.g., externalId already used by equipment)
Media typeapplication/json
object
code
required
string
message
required
string
details
object
key
additional properties
Examplegenerated
{ "code": "example", "message": "example", "details": { "additionalProperty": "example" }}Unauthorized
Media typeapplication/json
object
code
required
string
message
required
string
details
object
key
additional properties
Examplegenerated
{ "code": "example", "message": "example", "details": { "additionalProperty": "example" }}
