{ "Title": "Modules", "Description": "Compose module definitions", "Interface": "Module", "Struct": [ { "imports": [ "sqlxTypes github.com/jmoiron/sqlx/types", "github.com/cortezaproject/corteza-server/compose/types", "time" ] } ], "Parameters": { "path": [ { "name": "namespaceID", "required": true, "title": "Namespace ID", "type": "uint64" } ] }, "Protocol": "", "Authentication": [], "Path": "/namespace/{namespaceID}/module", "APIs": [ { "Name": "list", "Method": "GET", "Title": "List modules", "Path": "/", "Parameters": { "get": [ { "name": "query", "required": false, "title": "Search query", "type": "string" }, { "name": "name", "required": false, "title": "Search by name", "type": "string" }, { "name": "handle", "required": false, "title": "Search by handle", "type": "string" }, { "name": "limit", "title": "Limit", "type": "uint" }, { "name": "offset", "title": "Offset", "type": "uint" }, { "name": "page", "title": "Page number (1-based)", "type": "uint" }, { "name": "perPage", "title": "Returned items per page (default 50)", "type": "uint" }, { "name": "sort", "title": "Sort items", "type": "string" } ] } }, { "Name": "create", "Method": "POST", "Title": "Create module", "Path": "/", "Parameters": { "post": [ { "name": "name", "required": true, "title": "Module Name", "type": "string" }, { "name": "handle", "required": false, "title": "Module handle", "type": "string" }, { "name": "fields", "required": true, "title": "Fields JSON", "type": "types.ModuleFieldSet" }, { "name": "meta", "required": true, "title": "Module meta data", "type": "sqlxTypes.JSONText" } ] } }, { "Name": "read", "Method": "GET", "Title": "Read module", "Path": "/{moduleID}", "Parameters": { "path": [ { "name": "moduleID", "required": true, "title": "Module ID", "type": "uint64" } ] } }, { "Name": "update", "Method": "POST", "Title": "Update module", "Path": "/{moduleID}", "Parameters": { "path": [ { "name": "moduleID", "required": true, "title": "Module ID", "type": "uint64" } ], "post": [ { "name": "name", "required": true, "title": "Module Name", "type": "string" }, { "name": "handle", "required": false, "title": "Module Handle", "type": "string" }, { "name": "fields", "required": true, "title": "Fields JSON", "type": "types.ModuleFieldSet" }, { "name": "meta", "required": true, "title": "Module meta data", "type": "sqlxTypes.JSONText" }, { "name": "updatedAt", "required": false, "title": "Last update (or creation) date", "type": "*time.Time" } ] } }, { "Name": "delete", "Method": "DELETE", "Title": "Delete module", "Path": "/{moduleID}", "Parameters": { "path": [ { "name": "moduleID", "required": true, "title": "Module ID", "type": "uint64" } ] } }, { "Name": "triggerScript", "Method": "POST", "Title": "Fire compose:module trigger", "Path": "/{moduleID}/trigger", "Parameters": { "path": [ { "name": "moduleID", "required": true, "title": "ID", "type": "uint64" } ], "post": [ { "name": "script", "required": true, "title": "Script to execute", "type": "string" } ] } } ] }