v1

latestOpenAPI 3.0.32026-08-06138294578.6 KB
Models

Update Model

Updates a model's configuration.

Updating a model is a full replacement of its configuration. Every field in the request body is written to the model; any field you omit is cleared or reset to its default value.

To make a partial change, fetch the current model with GET /api/models/{id}, modify the fields you want to change, and send the complete object back in the update request.

Changes to source fields, filters, or the identity column take effect on the next sync execution that uses this model.

put/api/models/{id}

Path parameters

idstring uuid required
Example:248df4b7-aa70-47b8-a036-33ac447e668d

Query parameters

asyncboolean

Headers

X-Polytomic-Versionstring

Request body

configurationobject required
connection_idstring uuid required
fieldsstring[] nullable
identifierstring
labelsstring[] nullable
namestring required
organization_idstring uuid nullable
policiesstring[] nullable
refreshboolean
tracking_columnsstring[] nullable

Example request

{
  "configuration": {
    "table": "public.users"
  },
  "connection_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
  "enricher": {
    "connection_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "enricher_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "fields": [
      {
        "name": "phone_number"
      }
    ]
  },
  "identifier": "id",
  "labels": [
    "248df4b7-aa70-47b8-a036-33ac447e668d"
  ],
  "name": "Users",
  "organization_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
  "policies": [
    "248df4b7-aa70-47b8-a036-33ac447e668d"
  ],
  "refresh": true,
  "relations": [
    {
      "to": {
        "model_id": "248df4b7-aa70-47b8-a036-33ac447e668d"
      }
    }
  ]
}

Response

OK

Example response

{
  "data": {
    "configuration": {
      "table": "public.contacts"
    },
    "connection_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "created_by": {
      "id": "12345678-1234-1234-1234-123456789012",
      "name": "John Doe",
      "type": "user"
    },
    "enricher": {
      "connection_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
      "enricher_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
      "fields": [
        {
          "name": "phone_number"
        }
      ]
    },
    "fields": [
      {
        "created_by": {
          "id": "12345678-1234-1234-1234-123456789012",
          "name": "John Doe",
          "type": "user"
        },
        "description": "Unique identifier",
        "example": 123,
        "id": "248df4b7-aa70-47b8-a036-33ac447e668d",
        "label": "ID",
        "name": "id",
        "remote_type": "string",
        "type": "string",
        "unique": true
      }
    ],
    "id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "identifier": "id",
    "name": "Contacts",
    "organization_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "policies": [
      "248df4b7-aa70-47b8-a036-33ac447e668d"
    ],
    "relations": [
      {
        "from": "id",
        "to": {
          "field": "user_id",
          "model_id": "248df4b7-aa70-47b8-a036-33ac447e668d"
        }
      }
    ],
    "type": "postgresql",
    "updated_by": {
      "id": "12345678-1234-1234-1234-123456789012",
      "name": "John Doe",
      "type": "user"
    },
    "version": 1
  },
  "job": {
    "error": "error message",
    "job_id": "248df4b7-aa70-47b8-a036-33ac447e668d",
    "type": "createmodel"
  }
}