App Manifest
If you do not want to use Myne’s app to register your manifest, you can submit your applications’ manifests programmatically, which is useful in a CI/CD environment for example.
Endpoint
POST https://core.myne.systems/app-manifests
Schema
The body of the request MUST be of Content-Type: application/json and follow this schema:
{
"id": "",
"name": "",
"version": "",
"last_version_published": "",
"url": "",
"company": "",
"company_url": "",
"logo": "",
"contract": {},
"data_sharing_schemes": {}
}
| Property | Default Value | Description |
|---|---|---|
| id | "" | Id of the App. Used when updating the manifest |
| name | The name of your application | |
| version | Version of your app’s manifest | |
| url | Address of the app’s webpage | |
| company | Name of your company | |
| company_url | Address of your company’s webpage | |
| logo | A base64 data url string of your app’s logo | |
| contract | List of actions your application can perform. See below | |
| data_sharing_schemes | {} | List of Data Sharing Schemes that users can invoke. See below |
Actions
Action names (keys in the object actionsof the manifest) SHOULD be lowerCamelCased.
{
"createConversation": {
"name": "createConversation",
"description": "Create a conversation",
"query_template": "WRITE > Conversation IS:subject '%subject%' BEEN:Participate ME HAS:role '%role%'",
"query_params": [
"subject",
"role"
]
}
}
| Property | Default Value | Description |
|---|---|---|
| name | Name of the action | |
| description | A short description of what the action does | |
| query_template | A templated SGQL query. See Templated Queries | |
| query_params | A list of parameters used in the query_template | |
| hook | undefined | An url to call when the action is run. See below |
Hooks
Hooks are http calls triggered when the action is run.
{
"url": "",
"method": "",
"authorization_header": ""
}
| Property | Default Value | Description |
|---|---|---|
| url | The url to call | |
| method | GET, POST, DELETE, PUT… | |
| authorization_header | A string that will be injected in the Authorization http header of the request |
Data Sharing Schemes
Data Sharing Scheme names (keys in the object data_sharing_schemesof the manifest) SHOULD be lowerCamelCased.
{
"myList": {
"name": "myList",
"description": "",
"action": {},
"scheme_parameter_name": ""
}
}
| Property | Default Value | Description |
|---|---|---|
| name | Name of the scheme | |
| description | A short description of what the scheme | |
| action | One Action | |
| scheme_parameter_name | Name of the parameter that will be fixed (usually an id so that exactly one entity is shared) |