Skip to content

Duplicate surface views

POST /api/v1/surface-views/{savedSurfaceViewId}/duplicate: request fields and declared response contract.

POST/api/v1/surface-views/{savedSurfaceViewId}/duplicate

Authorization
PropertyValue
Permissionsettings.read
Workspace scoperequired
Scope targetworkspace

Parameters

Path parameters
FieldTypeRequiredNullableDefault
savedSurfaceViewIdstringrequirednon-null—

Query parameters: none.

Request body

Request body fields
FieldTypeRequiredNullableDefault
namestringrequirednon-null—
visibility"personal" | "team"optionalnon-null—

Response

200

Response fields
FieldTypeRequiredNullableDefault
dataobjectrequirednon-null—
data.idstringrequirednon-null—
data.companyIdstringrequirednon-null—
data.targetunknownrequirednon-null—
data.namestringrequirednon-null—
data.iconstringoptionalnon-null—
data.positionintegerrequirednon-null—
data.visibility"personal" | "team"requirednon-null—
data.ownerUserIdstringoptionalnon-null—
data.rendererstringrequirednon-null—
data.filtersreferenceoptionalnon-null—
data.sortarrayoptionalnon-null—
data.visibleFieldsarrayoptionalnon-null—
data.fieldOrderarrayoptionalnon-null—
data.rendererConfigobjectoptionalnon-null—
data.rendererConfig.collectionobjectoptionalnon-null—
data.rendererConfig.collection.presentationstringrequirednon-null—
data.rendererConfig.tableobjectoptionalnon-null—
data.rendererConfig.table.pageSizeintegeroptionalnon-null—
data.rendererConfig.kanbanobjectoptionalnon-null—
data.rendererConfig.kanban.groupFieldstringrequirednon-null—
data.rendererConfig.calendarobjectoptionalnon-null—
data.rendererConfig.calendar.dateFieldstringrequirednon-null—
data.rendererConfig.calendar.endDateFieldstringoptionalnon-null—
data.rendererConfig.calendar.timezonestringoptionalnon-null—
data.rendererConfig.mapobjectoptionalnon-null—
data.rendererConfig.map.locationBindingstringrequirednon-null—
data.rendererConfig.map.colorFieldstringoptionalnon-null—
data.rendererConfig.map.avatarFieldstringoptionalnon-null—
data.rendererConfig.map.defaultViewportobjectoptionalnon-null—
data.rendererConfig.dataGridobjectoptionalnon-null—
data.rendererConfig.dataGrid.rowHeight"comfortable" | "compact"optionalnon-null—
data.rendererConfig.dataGrid.pinnedFieldsobjectoptionalnon-null—
data.rendererConfig.dataGrid.visibleFieldOrderarrayoptionalnon-null—
data.rendererConfig.dataGrid.columnWidthsobjectoptionalnon-null—
data.descriptorCompatibilityHashstringrequirednon-null—
data.provenanceunknownoptionalnon-null—
data.createdAtunknownrequirednon-null—
data.updatedAtunknownrequirednon-null—

Declared failures

Declared failures
PropertyValue
SAVED_SURFACE_VIEW_INVALID400 — not retryable
SAVED_SURFACE_VIEW_NOT_FOUND404 — not retryable
SAVED_SURFACE_VIEW_STORE_FAILED503 — retryable

Readback

Read the result back with:

  • savedSurfaceViews.listScoped

Request example

Schematic only. Replace placeholders with real values and include all required nested fields.

POST /api/v1/surface-views/{savedSurfaceViewId}/duplicate HTTP/1.1
Authorization: Bearer <token>
x-merulan-workspace-id: <workspace-id>
Content-Type: application/json

{
  "name": "<name>"
}