API Reference
Authentication
Get AWS Cognito Configuration
-
Endpoint
GET api/v1/security/cognito
-
Example
-
Responses
- 200 OK
Enable AWS Cognito
-
Endpoint
PUT api/v1/security/cognito
-
Request body
-
Example
curl -X PUT https://<ip>:<port>/api/v1/security/cognito \ -H "Content-Type: application/json" \ -d '{"region": "<region>", "userPoolID": "<user-pool-id>", "clientID": "<client-id>", "identityPoolID": "<identity-pool-id>", "adminGroups":"<admin-groups>", "accessKey": "<access-key>", "secretKey": "<secret-key>", "token":"<access-token>"}'
-
Responses
-
200 OK
-
422 Invalid input
-
Disable AWS Cognito
-
Endpoint
Delete api/v1/security/cognito
-
Example
-
Responses
-
200 OK
{ "addr": "https://0.0.0.0:8081", "id": "<id>", "staticFolder": "mmabWeb", "log": { "file": "/var/log/memverge/mmab.log", "level": "debug", "maxSizeMB": 10, "maxBackups": 10 }, "security": { "certFile": "server.crt", "keyFile": "server.pem", "cognito": { "enabled": false, "userPoolID": "us-west-1_xxx", "identityPoolID": "", "clientID": "<client-id>", "adminGroups": [ "admin" ] } }, "ckpt": { "ckptMode": "iterative", "ckptInterval": "15m", "diagnosisMode": false }, "node": { "heartbeat": "30s", "ttl": "5m0s" }, "job": { "diskType": "gp3", "diskSizeGB": 120 } }
-
403 Not privileged
-
Checkpoint Configuration
For checkpoint configurations details (keys, values, definitions), see here.
Get Checkpoint Configuration
-
Endpoint
GET api/v1/config
-
Example
-
Responses
- 200 OK
{ "addr": "https://0.0.0.0:8081", "id": "<id>", "staticFolder": "mmabWeb", "log": { "file": "/var/log/memverge/mmab.log", "level": "debug", "maxSizeMB": 10, "maxBackups": 10 }, "security": { "certFile": "server.crt", "keyFile": "server.pem", "cognito": { "enabled": false, "userPoolID": "us-west-1_xxx", "identityPoolID": "", "clientID": "<client-id>", "adminGroups": [ "admin" ] } }, "ckpt": { "ckptMode": "iterative", "ckptInterval": "15m", "diagnosisMode": false }, "node": { "heartbeat": "30s", "ttl": "5m0s" }, "job": { "diskType": "gp3", "diskSizeGB": 120 } }
- 200 OK
Set Checkpoint Configuration
-
Endpoint
PUT api/v1/ckptConfig
-
Request body
-
Example
-
Responses
- 200 OK
Metrics Reporting
Get Metrics Reporting
-
Endpoint
GET api/v1/metrics/summary
-
Request body
- Example
-
Responses
- 200 OK
{ "items": { "metricDef-coreTime": [ { "id": "metricDef-coreTime.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152151934Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-coreTimeSaved": [ { "id": "metricDef-coreTimeSaved.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152158233Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-jobCost": [ { "id": "metricDef-jobCost.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152175923Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-jobSubmitted": [ { "id": "metricDef-jobSubmitted.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152143568Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-onDemandSavings": [ { "id": "metricDef-onDemandSavings.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152181611Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-spotProtection": [ { "id": "metricDef-spotProtection.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152166314Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ], "metricDef-spotSavings": [ { "id": "metricDef-spotSavings.queue-cjq-us-e1-p0", "point": { "time": "2025-02-28T01:57:26.152170973Z", "value": 0 }, "metaData": { "queueName": "cjq-us-e1-p0" } } ] } }
- 200 OK