{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://constal.ai/docs/credentials/reference/provider-setup.schema.json",
  "title": "CredentialProvider setup presentation metadata",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "service": { "type": "string", "minLength": 1, "maxLength": 64 },
    "useCase": { "type": "string", "minLength": 1, "maxLength": 256 },
    "recommended": { "type": "boolean" },
    "credentialSlots": {
      "type": "object",
      "additionalProperties": {
        "type": "object",
        "required": ["title"],
        "additionalProperties": false,
        "properties": {
          "title": { "type": "string", "minLength": 1, "maxLength": 128 },
          "description": { "type": "string", "minLength": 1, "maxLength": 512 },
          "documentationUrl": { "type": "string", "format": "uri", "maxLength": 2048 },
          "input": { "enum": ["secret", "multiline", "file"] },
          "accept": { "type": "array", "maxItems": 16, "items": { "type": "string", "minLength": 1, "maxLength": 64 } }
        }
      }
    }
  }
}
