| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | POST {{triliumHost}}/etapi/create-note | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | Content-Type: application/json | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |   "noteId": "forcedId{{$randomInt}}", | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  |   "parentNoteId": "root", | 
					
						
							|  |  |  |   "title": "Hello", | 
					
						
							|  |  |  |   "type": "text", | 
					
						
							| 
									
										
										
										
											2023-08-30 00:11:32 +02:00
										 |  |  |   "content": "Hi there!", | 
					
						
							|  |  |  |   "dateCreated": "2023-08-21 23:38:51.123+0200", | 
					
						
							|  |  |  |   "utcDateCreated": "2023-08-21 23:38:51.123Z" | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  | > {% | 
					
						
							|  |  |  |     client.assert(response.status === 201); | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.body.note.noteId.startsWith("forcedId")); | 
					
						
							|  |  |  |     client.assert(response.body.note.title == "Hello"); | 
					
						
							| 
									
										
										
										
											2023-08-30 00:11:32 +02:00
										 |  |  |     client.assert(response.body.note.dateCreated == "2023-08-21 23:38:51.123+0200"); | 
					
						
							|  |  |  |     client.assert(response.body.note.utcDateCreated == "2023-08-21 23:38:51.123Z"); | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.body.branch.parentNoteId == "root"); | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  |     client.log(`Created note ` + response.body.note.noteId + ` and branch ` + response.body.branch.branchId); | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  |     client.global.set("createdNoteId", response.body.note.noteId); | 
					
						
							|  |  |  |     client.global.set("createdBranchId", response.body.branch.branchId); | 
					
						
							|  |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | ### Clone to another location | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | POST {{triliumHost}}/etapi/branches | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | Content-Type: application/json | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   "noteId": "{{createdNoteId}}", | 
					
						
							| 
									
										
										
										
											2023-06-05 09:44:36 +02:00
										 |  |  |   "parentNoteId": "_hidden" | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  |     client.assert(response.status === 201); | 
					
						
							| 
									
										
										
										
											2023-06-05 09:44:36 +02:00
										 |  |  |     client.assert(response.body.parentNoteId == "_hidden"); | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     client.global.set("clonedBranchId", response.body.branchId); | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  |     client.log(`Created cloned branch ` + response.body.branchId); | 
					
						
							|  |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | GET {{triliumHost}}/etapi/notes/{{createdNoteId}} | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body.noteId == client.global.get("createdNoteId")); | 
					
						
							|  |  |  |     client.assert(response.body.title == "Hello"); | 
					
						
							|  |  |  |     // order is not defined and may fail in the future | 
					
						
							|  |  |  |     client.assert(response.body.parentBranchIds[0] == client.global.get("clonedBranchId")) | 
					
						
							|  |  |  |     client.assert(response.body.parentBranchIds[1] == client.global.get("createdBranchId")); | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | GET {{triliumHost}}/etapi/notes/{{createdNoteId}}/content | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body == "Hi there!"); | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | GET {{triliumHost}}/etapi/branches/{{createdBranchId}} | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body.branchId == client.global.get("createdBranchId")); | 
					
						
							|  |  |  |     client.assert(response.body.parentNoteId == "root"); | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | GET {{triliumHost}}/etapi/branches/{{clonedBranchId}} | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body.branchId == client.global.get("clonedBranchId")); | 
					
						
							| 
									
										
										
										
											2023-06-05 21:14:33 +02:00
										 |  |  |     client.assert(response.body.parentNoteId == "_hidden"); | 
					
						
							| 
									
										
										
										
											2022-01-07 19:33:59 +01:00
										 |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | POST {{triliumHost}}/etapi/attributes | 
					
						
							|  |  |  | Content-Type: application/json | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |   "attributeId": "forcedAttributeId{{$randomInt}}", | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  |   "noteId": "{{createdNoteId}}", | 
					
						
							|  |  |  |   "type": "label", | 
					
						
							|  |  |  |   "name": "mylabel", | 
					
						
							|  |  |  |   "value": "val", | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |   "isInheritable": true | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  |     client.assert(response.status === 201); | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.body.attributeId.startsWith("forcedAttributeId")); | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  |     client.global.set("createdAttributeId", response.body.attributeId); | 
					
						
							|  |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | GET {{triliumHost}}/etapi/attributes/{{createdAttributeId}} | 
					
						
							| 
									
										
										
										
											2022-01-10 17:09:20 +01:00
										 |  |  | Authorization: {{authToken}} | 
					
						
							| 
									
										
										
										
											2022-01-05 19:25:17 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							| 
									
										
										
										
											2022-01-12 19:32:23 +01:00
										 |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body.attributeId == client.global.get("createdAttributeId")); | 
					
						
							| 
									
										
										
										
											2022-01-12 21:14:12 +01:00
										 |  |  | %} | 
					
						
							| 
									
										
										
										
											2023-06-05 09:44:36 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | POST {{triliumHost}}/etapi/attachments | 
					
						
							|  |  |  | Content-Type: application/json | 
					
						
							|  |  |  | Authorization: {{authToken}} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2023-07-14 17:01:56 +02:00
										 |  |  |   "ownerId": "{{createdNoteId}}", | 
					
						
							| 
									
										
										
										
											2023-06-05 09:44:36 +02:00
										 |  |  |   "role": "file", | 
					
						
							|  |  |  |   "mime": "plain/text", | 
					
						
							|  |  |  |   "title": "my attachment", | 
					
						
							|  |  |  |   "content": "my text" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							|  |  |  |     client.assert(response.status === 201); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     client.global.set("createdAttachmentId", response.body.attachmentId); | 
					
						
							|  |  |  | %} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | GET {{triliumHost}}/etapi/attachments/{{createdAttachmentId}} | 
					
						
							|  |  |  | Authorization: {{authToken}} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | > {% | 
					
						
							|  |  |  |     client.assert(response.status === 200); | 
					
						
							|  |  |  |     client.assert(response.body.attachmentId == client.global.get("createdAttachmentId")); | 
					
						
							|  |  |  |     client.assert(response.body.role == "file"); | 
					
						
							|  |  |  |     client.assert(response.body.mime == "plain/text"); | 
					
						
							|  |  |  |     client.assert(response.body.title == "my attachment"); | 
					
						
							|  |  |  | %} |