Search documentation
karat

+

K

User Documentation ↗

Create object link

POST/api/gotham/v1/objects/{primaryKey}/links/{linkType}
Warning

This endpoint is in preview and may be modified or removed at any time. To use this endpoint, add preview=true to the request query parameters.

Create a link. Both sides of the link must exist.

Invalid link type result in an InvalidOntologyTypes error.

Path parameters

primaryKey
string

The primary key of the object from which the links originate (source object).

linkType
string

The type of the link that exists between the object and the requested objects.

Query parameters

preview
boolean
optional

Represents a boolean value that restricts an endpoint to preview mode when set to true.

Request body

CreateObjectLinkRequest
object

A request to create a link to a target object. Requires specifying the security for the link to create, which may be different from one or both sides of the objects being linked.

Hide child attributes

Hide child attributes

targetPrimaryKey
string

The primary key/unique identifier of an object, useful for interacting with Gotham APIs to load and mutate objects.

security
object

Security mutation details for a component of an object - property, media, link. Specifying security overrides the system's default security when creating and updating data. If portion markings are specified, permissions may be specified. If portion markings are not specified, permissions must be specified.

This model may evolve over time for other security features.

Show child attributes

Show child attributes

portionMarkings
list<PortionMarking>
optional

Collection of classification portion markings; markings are validated against the system's Classification Based Access Control (CBAC) rules.

If invalid, an InvalidClassificationPortionMarkings error will be thrown.

If not specified, no markings will be applied.

Show child attributes

Show child attributes

PortionMarking
string

Security markings represent the level of access control that applies to a specific piece of information (e.g., object property, object title). Security markings are required upon creating a new object, and upon adding a new property to an existing object. To access information with one or more markings, the user must have access to the markings associated with that information as defined by your organization's defined security rules. Only users with the correct permissions can get, update, or delete a property with security markings.

In particular, if a user creates an object and adds a property of type with highly restricted markings, it is possible that subsequent calls to the get object properties endpoint may fail to display the highly restricted property.

Contact your Palantir administrator for more information on the markings that your organization uses.

permissions
list<PermissionItem>
optional

An optional mapping of groups to permissions allowed for the group. If not specified, the system's default is for the Everyone group to have WRITE permission, and the Administrators group to have OWNER permission.

A user will get the highest permission of any of the group they belong to. If portion markings are specified, the user must have access to all the markings specified before these permissions are applied.

Show child attributes

Show child attributes

PermissionItem
object

A mapping of a group to a permission.

Show child attributes

Show child attributes

group
object

A qualified group name as used when defining permissions. A group contains a name, and optionally a realm. The realm is required for external groups.

Show child attributes

Show child attributes

name
string

The base name of the group.

realm
string
optional

The realm of the group. Empty for internal groups.

permission
string (enum)

A permission, one of READ, WRITE, or OWNER. Each successive permission implies the previous ones, so WRITE implies READ, and OWNER implies READ and WRITE.

Enum values: READ, WRITE, OWNER

Response body

CreateObjectLinkResponse
object

Success response indicating link was created successfully.

Examples

Request

Copied!
1 2 3 4 5 curl -X POST \ -H "Content-type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://$HOSTNAME/api/gotham/v1/objects/ri.gotham.111111-0.object-internal.111111/links/com.palantir.link.parentof?preview=true" \ -d '{"targetPrimaryKey":"ri.gotham.111111-0.object-internal.222222","security":{"portionMarkings":["SENSITIVE"]}}'