Merge branch '11652-recursive-contents'
[arvados.git] / doc / api / methods / links.html.textile.liquid
1 ---
2 layout: default
3 navsection: api
4 navmenu: API Methods
5 title: "links"
6
7 ...
8
9 API endpoint base: @https://{{ site.arvados_api_host }}/arvados/v1/links@
10
11 Object type: @o0j2j@
12
13 Example UUID: @zzzzz-o0j2j-0123456789abcde@
14
15 h2. Resource
16
17 Links are an extensible way to describe relationships between Arvados objects and metadata about individual objects.
18
19 Each link has, in addition to the "Common resource fields":{{site.baseurl}}/api/resources.html:
20
21 table(table table-bordered table-condensed).
22 |_. Attribute|_. Type|_. Description|
23 |head_uuid|string|The object being described or acted on.|
24 |tail_uuid|string|The origin or actor in the description or action (may be null).|
25 |link_class|string|Type of link|
26 |name|string|Primary value of the link.|
27 |properties|hash|Additional information, expressed as a key→value hash. Key: string. Value: string, number, array, or hash.|
28
29 h2. Link classes
30
31 Some classes are pre-defined by convention and have standard meanings attached to names.
32
33 h3. permission
34
35 See "permission links":{{site.baseurl}}/api/permission-model.html#links section of the permission model.
36
37 h3. tag
38
39 A **tag** link describes an object using an unparsed plain text string. Tags can be used to annotate objects that are not editable, like collections and objects shared as read-only.
40
41 table(table table-bordered table-condensed).
42 |_. tail_type→head_type|_. name→head_uuid {properties}|
43 |→Collection           | _tag name_ → _collection uuid_|
44 |→Job                  | _tag name_ → _job uuid_|
45
46 h2. Methods
47
48 See "Common resource methods":{{site.baseurl}}/api/methods.html for more information about @create@, @delete@, @get@, @list@, and @update@.
49
50 Required arguments are displayed in %{background:#ccffcc}green%.
51
52 h3. create
53
54 Create a new Link.
55
56 Arguments:
57
58 table(table table-bordered table-condensed).
59 |_. Argument |_. Type |_. Description |_. Location |_. Example |
60 |link|object||query||
61
62 h3. delete
63
64 Delete an existing Link.
65
66 Arguments:
67
68 table(table table-bordered table-condensed).
69 |_. Argument |_. Type |_. Description |_. Location |_. Example |
70 {background:#ccffcc}.|uuid|string|The UUID of the Link in question.|path||
71
72 h3. get
73
74 Gets a Link's metadata by UUID.
75
76 Arguments:
77
78 table(table table-bordered table-condensed).
79 |_. Argument |_. Type |_. Description |_. Location |_. Example |
80 {background:#ccffcc}.|uuid|string|The UUID of the Link in question.|path||
81
82 h3. list
83
84 List links.
85
86 See "common resource list method.":{{site.baseurl}}/api/methods.html#index
87
88 h3. update
89
90 Update attributes of an existing Link.
91
92 Arguments:
93
94 table(table table-bordered table-condensed).
95 |_. Argument |_. Type |_. Description |_. Location |_. Example |
96 {background:#ccffcc}.|uuid|string|The UUID of the Link in question.|path||
97 |link|object||query||