RATIO MACHINA STARTER logo

MERCURY

SkillEvals REST API

The SkillEvals REST API manages individual skill evaluation configurations. Define evaluation criteria, input parameters, expected outputs, and assessment parameters for comprehensive skill performance testing.

Base URL & Authentication

Base URL: https://your-api-name.mercury.ratiomachina.com
Authentication: x-mercury-api-key: YOUR_API_KEY (Note: Not validated for skill-eval endpoints)

List Skill Evaluations

GET /skill-evals

Query Parameters

  • skillExternalId - Filter by skill external ID (optional)

Response Example

{
  "skillEvals": [
    {
      "id": "abc12345-e89b-12d3-a456-426614174000",
      "name": "Sentiment Analysis Accuracy",
      "skillExternalId": "skill123",
      "inputs": {"text": "This product is amazing!", "context": "review"},
      "expectedOutputs": {"sentiment": "positive", "confidence": 0.9},
      "criteria": {
        "sentiment": {
          "operator": "equals",
          "value": "positive"
        }
      },
      "createdAt": "2024-01-15T10:30:00Z",
      "updatedAt": "2024-01-15T10:30:00Z"
    }
  ]
}

Create Skill Evaluation

POST /skill-evals

Request Body

{
  "name": "Sentiment Analysis Accuracy",
  "skillExternalId": "skill123",
  "inputs": {
    "text": "This product is amazing!",
    "context": "review"
  },
  "expectedOutputs": {
    "sentiment": "positive",
    "confidence": 0.9
  },
  "criteria": {
    "sentiment": {
      "operator": "equals",
      "value": "positive"
    },
    "confidence": {
      "operator": "gt",
      "value": 0.8
    }
  }
}

Response Example

{
  "skillEval": {
    "id": "abc12345-e89b-12d3-a456-426614174000",
    "name": "Sentiment Analysis Accuracy",
    "skillExternalId": "skill123",
    "inputs": "{\"text\":\"This product is amazing!\",\"context\":\"review\"}",
    "expectedOutputs": "{\"sentiment\":\"positive\",\"confidence\":0.9}",
    "criteria": "{\"sentiment\":{\"operator\":\"equals\",\"value\":\"positive\"}}",
    "createdAt": "2024-01-15T10:30:00Z",
    "updatedAt": "2024-01-15T10:30:00Z"
  }
}

Get Skill Evaluation by ID

GET /skill-evals/{id}

Path Parameters

  • id - Skill evaluation UUID

Response Example

{
  "skillEval": {
    "id": "abc12345-e89b-12d3-a456-426614174000",
    "name": "Sentiment Analysis Accuracy",
    "skillExternalId": "skill123",
    "inputs": "{\"text\":\"This product is amazing!\",\"context\":\"review\"}",
    "expectedOutputs": "{\"sentiment\":\"positive\",\"confidence\":0.9}",
    "criteria": "{\"sentiment\":{\"operator\":\"equals\",\"value\":\"positive\"}}",
    "createdAt": "2024-01-15T10:30:00Z",
    "updatedAt": "2024-01-15T10:30:00Z"
  }
}

Update Skill Evaluation

PUT /skill-evals/{id}

Request Body

{
  "name": "Enhanced Sentiment Analysis Test",
  "expectedOutputs": {
    "sentiment": "positive",
    "confidence": 0.95
  },
  "criteria": {
    "confidence": {
      "operator": "gt",
      "value": 0.9
    }
  }
}

Response Example

{
  "skillEval": {
    "id": "abc12345-e89b-12d3-a456-426614174000",
    "name": "Enhanced Sentiment Analysis Test",
    "skillExternalId": "skill123",
    "inputs": "{\"text\":\"This product is amazing!\",\"context\":\"review\"}",
    "expectedOutputs": "{\"sentiment\":\"positive\",\"confidence\":0.95}",
    "criteria": "{\"confidence\":{\"operator\":\"gt\",\"value\":0.9}}",
    "createdAt": "2024-01-15T10:30:00Z",
    "updatedAt": "2024-01-15T11:45:00Z"
  }
}

Delete Skill Evaluation

DELETE /skill-evals/{id}

⚠️ Warning: This will permanently delete the skill evaluation.

Path Parameters

  • id - Skill evaluation UUID

Response Example

{
  "message": "Skill evaluation deleted successfully",
  "deletedSkillEval": {
    "id": "abc12345-e89b-12d3-a456-426614174000",
    "name": "Sentiment Analysis Accuracy",
    "skillExternalId": "skill123"
  }
}

Batch Delete Skill Evaluations

DELETE /skill-evals

⚠️ Warning: This will permanently delete multiple skill evaluations.

Request Body

{
  "ids": [
    "abc12345-e89b-12d3-a456-426614174000",
    "def67890-e89b-12d3-a456-426614174001"
  ]
}

Response Example

{
  "message": "Skill evaluations deleted successfully",
  "deletedCount": 2,
  "deletedSkillEvals": [
    {
      "id": "abc12345-e89b-12d3-a456-426614174000",
      "name": "Sentiment Analysis Accuracy"
    }
  ]
}

SkillEvals API Best Practices

Evaluation Design

  • Use realistic inputs that match production scenarios
  • Define clear expected outputs for comparison
  • Set appropriate criteria with correct operators
  • Test edge cases and boundary conditions

Data Management

  • Data fields are stored as JSON strings
  • Filter evaluations by skill external ID when needed
  • Use batch operations for multiple evaluations
  • Validate operator usage: equals, gt, lt, contains, etc.
Transcend the hype with MERCURY by Ratio Machina