First, create a document within your Domain using some initial data.
import { Context } from '@contextprotocol/sdk';
const ctx = new Context({ apiKey: 'your_api_key_here' });
async function createDocument() {
const data = {
title: "Initial Document",
content: "This is the initial content of the document."
};
const pathToFile = "myfiles/path/file_name";
const document = await ctx.createDocument(pathToFile, data);
if (!document.success) {
// Handle error
}
console.log(`Document created on: ${document.data.path}`);
return document;
}
2. Define and create a Template
Next, define a JSON schema and use it to create a new Template on your domain.
async function createTemplate() {
const schema = {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the document."
},
"content": {
"type": "string",
"description": "The content of the document."
}
},
"required": ["title", "content"]
};
const templatePath = "templates/newtemplate";
const template = await ctx.createTemplate(templatePath, schema);
if (!template.success) {
// Handle error
}
console.log(`Template created on: ${template.data.path}`);
return template;
}
Then, update the previously created document to be adapted to the template.
async function updateDocument(documentPath) {
const updatedData = {
title: "Updated Document",
content: "This is the updated content of the document."
};
const doc = await ctx.document(documentPath)
const updatedDoc = await doc.data.update(updatedData);
if (!updatedDoc.success) {
// Handle error
}
console.log(`Document updated with new data: ${updatedDoc.data.data}`);
return updatedDoc;
}
Finally, install the created template.
async function installTemplate(documentPath) {
const doc = await ctx.document(documentPath)
const updatedDoc = await doc.data.install(["your_domain/templates/newtemplate"]);
if (!updatedDoc.success) {
// Handle error
}
console.log(`Document updated with this templates: ${updatedDoc.data.templates}`);
return updatedDoc;
}
Finally, update the previously created document with new data and apply the newly created template.