Unicat API Reference

Up - API Reference - Home


/api/p/<project gid>/records/definition/transfer_from

Requires JWT.

Works on both extension groups and base-definition groups.

The source group is transferred to this group. Afterwards, unused extended definition are cleaned up.

Note: Field data on the source records is dropped for fields that are not shared with this group.

Cannot be used from a linked record; use the canonical.

Request

POST /api/p/<project gid>/records/definition/transfer_from
Authorization: Bearer <JWT>

{
    "record": "<record gid>",
    "source_definition": "<extended definition gid>"
}

record the record's gid (keeps / provides the extended definition)
source_definition the source extended definition's gid

optional

language return data for this (project) language.
languages return data for these (project) languages.

If you request language and/or languages, you get the records' title and fields for the combined set. If you request neither, you'll get all available languages.

Success response

Authorization: <JWT>

{
    "success": true,
    "result": {
        "record": "<record gid>",
        "definition": "<extended definition gid>"
    },
    "data": {
        "definitions": {
            "<extended definition gid>": {
                "gid": "<extended definition gid>",
                "is_extended": true,
                …
            }
        },
        "records": {
            "<record gid>": {
                "gid": "<record gid>",
                "definition": "<extended definition gid>",
                …
            }
        }
    }
}

result

record the subject record (keeps / provides the target extended definition)
definition this record's extended definition (the target)

Other records from the source extension group are also reassigned; they are not included in the response.

data

definitions Definition info with name, classes, fields.
records The subject record with hierarchy, definition, field values.
See Deferred loading of extended definitions.

Error responses

400 Bad request - missing parameters or wrong type or value
401 Unauthorized - missing or expired JWT
403 Forbidden - not a member of this project
422 Unprocessable entity - linked record, unknown extended definition, or invalid source