Skip to content

Save the workspace settings (admin, If-Match)

PUT
/api/v1/settings
curl --request PUT \
--url https://example.com/api/v1/settings \
--header 'Content-Type: application/json' \
--data '{ "accent_hex": "example", "community_paragraph": "example", "logo_svg": "example", "name": "example", "osm_signin_enabled": true, "tagline": "example" }'

Validate every field, then save with the version the admin last saw.

if-match
Any of:
string
Media typeapplication/json
WorkspaceUpdate

The editable settings. Every field is sent; logo_svg: null removes the logo.

object
accent_hex
required
Accent Hex
string
community_paragraph
required
Community Paragraph
string
logo_svg
Any of:
string
name
required
Name
string
osm_signin_enabled
Osm Signin Enabled
boolean
default: true
tagline
required
Tagline
string

Successful Response

Media typeapplication/json
WorkspaceSettings

The workspace as an admin sees it. version goes back as If-Match when saving.

object
accent_contrast_dark
required
Accent Contrast Dark
number
accent_contrast_light
required
Accent Contrast Light
number
accent_dark_hex
required
Accent Dark Hex

The same accent lightened for the dark canvas

string
accent_hex
required
Accent Hex

Accent on the light canvas (4.5:1 or better)

string
active_pack
Any of:
string
calibration_version
Any of:
string
community_paragraph
required
Community Paragraph
string
logo_svg
Any of:
string
name
required
Name
string
osm_signin_configured
required
Osm Signin Configured

True when the server holds the OpenStreetMap application settings

boolean
osm_signin_enabled
required
Osm Signin Enabled
boolean
tagline
required
Tagline
string
updated_at
required
Updated At
string format: date-time
version
required
Version
integer

Example generated

{
"accent_contrast_dark": 1,
"accent_contrast_light": 1,
"accent_dark_hex": "example",
"accent_hex": "example",
"active_pack": "example",
"calibration_version": "example",
"community_paragraph": "example",
"logo_svg": "example",
"name": "example",
"osm_signin_configured": true,
"osm_signin_enabled": true,
"tagline": "example",
"updated_at": "2026-04-15T12:00:00Z",
"version": 1
}

Unauthorized

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Forbidden

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Precondition Failed

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Unprocessable Content

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Precondition Required

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Map data © OpenStreetMap contributors, under the Open Database Licence. Code under the Apache-2.0 licence. Made by Yogesh.

Changeset Second Opinion is an independent open source tool for OpenStreetMap reviewers. It is not endorsed by, sponsored by or affiliated with the OpenStreetMap Foundation. OpenStreetMap is a trademark of the OpenStreetMap Foundation, used under itstrademark policy.