MechaMental
Api reference

Releases

List releases

GET
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id

Query Parameters

include_archived?Include Archived

Include archived releases

Defaultfalse
limit?Limit

Maximum number of items to return (1-200)

Default50
Range1 <= value <= 200
cursor?|

Cursor for pagination (from previous response's next_cursor)

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://loading/v1/orgs/string/workspaces/string/apps/string/releases"
{
  "total": 0,
  "has_more": false,
  "next_cursor": "string",
  "releases": [
    {
      "release_id": "string",
      "app_id": "string",
      "workspace_id": "string",
      "org_id": "string",
      "release_tag": "string",
      "release_number": 0,
      "status": "draft",
      "description": "string",
      "endpoint_count": 0,
      "augmentation_count": 0,
      "activated_at": "string",
      "activated_by": "string",
      "created_at": "string",
      "created_by": "string"
    }
  ],
  "active_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Create a new release

POST
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id

Header Parameters

authorization?string|null

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://loading/v1/orgs/string/workspaces/string/apps/string/releases" \  -H "Content-Type: application/json" \  -d '{    "release_tag": "string"  }'
{
  "release_id": "string",
  "app_id": "string",
  "workspace_id": "string",
  "org_id": "string",
  "release_tag": "string",
  "release_number": 0,
  "status": "draft",
  "description": "string",
  "endpoint_count": 0,
  "augmentation_count": 0,
  "activated_at": "string",
  "activated_by": "string",
  "created_at": "string",
  "created_by": "string",
  "endpoints": [],
  "augmentations": [],
  "change_log": "string",
  "previous_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Get active release

GET
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/active

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/active"
{
  "release_id": "string",
  "app_id": "string",
  "workspace_id": "string",
  "org_id": "string",
  "release_tag": "string",
  "release_number": 0,
  "status": "draft",
  "description": "string",
  "endpoint_count": 0,
  "augmentation_count": 0,
  "activated_at": "string",
  "activated_by": "string",
  "created_at": "string",
  "created_by": "string",
  "endpoints": [],
  "augmentations": [],
  "change_log": "string",
  "previous_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Get release details

GET
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/{release_id}

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id
release_id*Release Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/string"
{
  "release_id": "string",
  "app_id": "string",
  "workspace_id": "string",
  "org_id": "string",
  "release_tag": "string",
  "release_number": 0,
  "status": "draft",
  "description": "string",
  "endpoint_count": 0,
  "augmentation_count": 0,
  "activated_at": "string",
  "activated_by": "string",
  "created_at": "string",
  "created_by": "string",
  "endpoints": [],
  "augmentations": [],
  "change_log": "string",
  "previous_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Delete a release

DELETE
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/{release_id}

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id
release_id*Release Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/string"
{}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Activate a release

POST
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/{release_id}/activate

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id
release_id*Release Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/string/activate"
{
  "message": "string",
  "release": {
    "release_id": "string",
    "app_id": "string",
    "workspace_id": "string",
    "org_id": "string",
    "release_tag": "string",
    "release_number": 0,
    "status": "draft",
    "description": "string",
    "endpoint_count": 0,
    "augmentation_count": 0,
    "activated_at": "string",
    "activated_by": "string",
    "created_at": "string",
    "created_by": "string"
  },
  "previous_active_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Rollback to a release

POST
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/{release_id}/rollback

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id
release_id*Release Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/string/rollback"
{
  "message": "string",
  "release": {
    "release_id": "string",
    "app_id": "string",
    "workspace_id": "string",
    "org_id": "string",
    "release_tag": "string",
    "release_number": 0,
    "status": "draft",
    "description": "string",
    "endpoint_count": 0,
    "augmentation_count": 0,
    "activated_at": "string",
    "activated_by": "string",
    "created_at": "string",
    "created_by": "string"
  },
  "previous_active_release_id": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}

Archive a release

POST
/v1/orgs/{org_id}/workspaces/{workspace_id}/apps/{app_id}/releases/{release_id}/archive

Path Parameters

org_id*Org Id
workspace_id*Workspace Id
app_id*App Id
release_id*Release Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://loading/v1/orgs/string/workspaces/string/apps/string/releases/string/archive"
{
  "release_id": "string",
  "app_id": "string",
  "workspace_id": "string",
  "org_id": "string",
  "release_tag": "string",
  "release_number": 0,
  "status": "draft",
  "description": "string",
  "endpoint_count": 0,
  "augmentation_count": 0,
  "activated_at": "string",
  "activated_by": "string",
  "created_at": "string",
  "created_by": "string"
}
{
  "error": "AUTHENTICATION_FAILED",
  "message": "Authentication required",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 401
}
{
  "error": "FORBIDDEN",
  "message": "You don't have permission to perform this action",
  "details": {
    "required_permission": "resource:action"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 403
}
{
  "error": "RESOURCE_NOT_FOUND",
  "message": "The requested resource was not found",
  "details": {
    "resource_type": "example",
    "resource_id": "xxx"
  },
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 404
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
{
  "error": "INTERNAL_SERVER_ERROR",
  "message": "An unexpected error occurred",
  "details": {},
  "timestamp": "2025-01-01T00:00:00.000000",
  "status_code": 500
}