MechaMental
Api reference

Org Model Catalog

List Logical Models

GET
/v1/orgs/{org_id}/model-catalog

Path Parameters

org_id*Org Id

Query Parameters

model_type?|null
status?|null
enabled_only?Enabled Only
Defaultfalse
limit?Limit
Default50
Range1 <= value <= 100
cursor?string|null

Header Parameters

authorization?string|null

Response Body

application/json

application/json

curl -X GET "https://loading/v1/orgs/string/model-catalog"
{
  "total": 0,
  "has_more": false,
  "next_cursor": "string",
  "models": [
    {
      "logical_model_id": "string",
      "org_id": "string",
      "name": "string",
      "description": "string",
      "model_type": "string",
      "capabilities": {
        "property1": true,
        "property2": true
      },
      "default_temperature": 0,
      "default_max_tokens": 0,
      "default_top_p": 0,
      "targets": [
        {
          "provider_account_id": "string",
          "model_name": "string",
          "weight": 100,
          "priority": 1,
          "enabled": true,
          "consecutive_failures": 0,
          "last_failure": "string",
          "last_success": "string",
          "temperature_override": 0,
          "max_tokens_override": 1
        }
      ],
      "fallback_chain": [
        "string"
      ],
      "constraints": {
        "data_residency": [
          "string"
        ],
        "require_audit_log": false,
        "max_cost_per_1k_tokens": "string",
        "max_latency_ms": 0,
        "allow_caching": true,
        "cache_ttl_seconds": 0
      },
      "status": "string",
      "status_reason": "string",
      "enabled": true,
      "healthy_targets_count": 0,
      "total_targets_count": 0,
      "tags": {
        "property1": "string",
        "property2": "string"
      },
      "created_by": "string",
      "created_at": "string",
      "updated_at": "string"
    }
  ]
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Create Logical Model

POST
/v1/orgs/{org_id}/model-catalog

Path Parameters

org_id*Org 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

curl -X POST "https://loading/v1/orgs/string/model-catalog" \  -H "Content-Type: application/json" \  -d '{    "logical_model_id": "string",    "name": "string"  }'
{
  "logical_model_id": "string",
  "org_id": "string",
  "name": "string",
  "description": "string",
  "model_type": "string",
  "capabilities": {
    "property1": true,
    "property2": true
  },
  "default_temperature": 0,
  "default_max_tokens": 0,
  "default_top_p": 0,
  "targets": [
    {
      "provider_account_id": "string",
      "model_name": "string",
      "weight": 100,
      "priority": 1,
      "enabled": true,
      "consecutive_failures": 0,
      "last_failure": "string",
      "last_success": "string",
      "temperature_override": 0,
      "max_tokens_override": 1
    }
  ],
  "fallback_chain": [
    "string"
  ],
  "constraints": {
    "data_residency": [
      "string"
    ],
    "require_audit_log": false,
    "max_cost_per_1k_tokens": "string",
    "max_latency_ms": 0,
    "allow_caching": true,
    "cache_ttl_seconds": 0
  },
  "status": "string",
  "status_reason": "string",
  "enabled": true,
  "healthy_targets_count": 0,
  "total_targets_count": 0,
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "created_by": "string",
  "created_at": "string",
  "updated_at": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Get Logical Model

GET
/v1/orgs/{org_id}/model-catalog/{logical_model_id}

Path Parameters

org_id*Org Id
logical_model_id*Logical Model Id

Header Parameters

authorization?string|null

Response Body

application/json

application/json

curl -X GET "https://loading/v1/orgs/string/model-catalog/string"
{
  "logical_model_id": "string",
  "org_id": "string",
  "name": "string",
  "description": "string",
  "model_type": "string",
  "capabilities": {
    "property1": true,
    "property2": true
  },
  "default_temperature": 0,
  "default_max_tokens": 0,
  "default_top_p": 0,
  "targets": [
    {
      "provider_account_id": "string",
      "model_name": "string",
      "weight": 100,
      "priority": 1,
      "enabled": true,
      "consecutive_failures": 0,
      "last_failure": "string",
      "last_success": "string",
      "temperature_override": 0,
      "max_tokens_override": 1
    }
  ],
  "fallback_chain": [
    "string"
  ],
  "constraints": {
    "data_residency": [
      "string"
    ],
    "require_audit_log": false,
    "max_cost_per_1k_tokens": "string",
    "max_latency_ms": 0,
    "allow_caching": true,
    "cache_ttl_seconds": 0
  },
  "status": "string",
  "status_reason": "string",
  "enabled": true,
  "healthy_targets_count": 0,
  "total_targets_count": 0,
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "created_by": "string",
  "created_at": "string",
  "updated_at": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Update Logical Model

PATCH
/v1/orgs/{org_id}/model-catalog/{logical_model_id}

Path Parameters

org_id*Org Id
logical_model_id*Logical Model 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

curl -X PATCH "https://loading/v1/orgs/string/model-catalog/string" \  -H "Content-Type: application/json" \  -d '{}'
{
  "logical_model_id": "string",
  "org_id": "string",
  "name": "string",
  "description": "string",
  "model_type": "string",
  "capabilities": {
    "property1": true,
    "property2": true
  },
  "default_temperature": 0,
  "default_max_tokens": 0,
  "default_top_p": 0,
  "targets": [
    {
      "provider_account_id": "string",
      "model_name": "string",
      "weight": 100,
      "priority": 1,
      "enabled": true,
      "consecutive_failures": 0,
      "last_failure": "string",
      "last_success": "string",
      "temperature_override": 0,
      "max_tokens_override": 1
    }
  ],
  "fallback_chain": [
    "string"
  ],
  "constraints": {
    "data_residency": [
      "string"
    ],
    "require_audit_log": false,
    "max_cost_per_1k_tokens": "string",
    "max_latency_ms": 0,
    "allow_caching": true,
    "cache_ttl_seconds": 0
  },
  "status": "string",
  "status_reason": "string",
  "enabled": true,
  "healthy_targets_count": 0,
  "total_targets_count": 0,
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "created_by": "string",
  "created_at": "string",
  "updated_at": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Delete Logical Model

DELETE
/v1/orgs/{org_id}/model-catalog/{logical_model_id}

Path Parameters

org_id*Org Id
logical_model_id*Logical Model Id

Header Parameters

authorization?string|null

Response Body

application/json

curl -X DELETE "https://loading/v1/orgs/string/model-catalog/string"
Empty
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}