Function: createRelationship()
function createRelationship(client, parameters): Promise<{
[key: string]: unknown;
_expandable?: {
[key: string]: unknown;
relationData?: string;
source?: string;
target?: string;
};
_links: {
[key: string]: unknown;
base?: string;
byOperation?: string;
collection?: string;
context?: string;
download?: string;
editui?: string;
edituiv2?: string;
next?: string;
prev?: string;
self?: string;
tinyui?: string;
webui?: string;
};
name: string;
relationData?: {
[key: string]: unknown;
createdBy?: User;
createdDate?: Date;
friendlyCreatedDate?: string;
};
source?: | User
| Content
| Space;
target?: | User
| Content
| Space;
}>;Defined in: src/v1/api/relation.ts:76
Creates a relationship between two entities (user, space, content). The 'favourite' relationship is supported by default, but you can use this method to create any type of relationship between two entities.
For example, the following method creates a 'sibling' relationship between two pieces of content: PUT /wiki/rest/api/relation/sibling/from/content/123/to/content/456
Permissions required: Permission to access the Confluence site ('Can use' global permission).
Parameters
| Parameter | Type | Description |
|---|---|---|
client | Client | - |
parameters | { relationName: string; sourceKey: string; sourceStatus?: string; sourceType: "content" | "user" | "space"; sourceVersion?: number; targetKey: string; targetStatus?: string; targetType: "content" | "user" | "space"; targetVersion?: number; } | - |
parameters.relationName | string | The name of the relationship. This method supports the 'favourite' (i.e. 'save for later') relationship. You can also specify any other value for this parameter to create a custom relationship type. |
parameters.sourceKey | string | - The identifier for the source entity: - If sourceType is user, then specify either current (logged-in user), the user key of the user, or the account ID of the user. Note that the user key has been deprecated in favor of the account ID for this parameter. See the migration guide for details. - If sourceType is 'content', then specify the content ID. - If sourceType is 'space', then specify the space key. |
parameters.sourceStatus? | string | The status of the source. This parameter is only used when the sourceType is 'content'. |
parameters.sourceType | "content" | "user" | "space" | The source entity type of the relationship. This must be 'user', if the relationName is 'favourite'. |
parameters.sourceVersion? | number | The version of the source. This parameter is only used when the sourceType is 'content' and the sourceStatus is 'historical'. |
parameters.targetKey | string | - The identifier for the target entity: - If targetType is user, then specify either current (logged-in user), the user key of the user, or the account ID of the user. Note that the user key has been deprecated in favor of the account ID for this parameter. See the migration guide for details. - If targetType is 'content', then specify the content ID. - If targetType is 'space', then specify the space key. |
parameters.targetStatus? | string | The status of the target. This parameter is only used when the targetType is 'content'. |
parameters.targetType | "content" | "user" | "space" | The target entity type of the relationship. This must be 'space' or 'content', if the relationName is 'favourite'. |
parameters.targetVersion? | number | The version of the target. This parameter is only used when the targetType is 'content' and the targetStatus is 'historical'. |
Returns
Promise<{ [key: string]: unknown; _expandable?: { [key: string]: unknown; relationData?: string; source?: string; target?: string; }; _links: { [key: string]: unknown; base?: string; byOperation?: string; collection?: string; context?: string; download?: string; editui?: string; edituiv2?: string; next?: string; prev?: string; self?: string; tinyui?: string; webui?: string; }; name: string; relationData?: { [key: string]: unknown; createdBy?: User; createdDate?: Date; friendlyCreatedDate?: string; }; source?: | User | Content | Space; target?: | User | Content | Space; }>