{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/wakatime/json-schema/wakatime-commit-schema.json",
  "title": "Commit",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/wakatime-commits-api-openapi.yml#/components/schemas/Commit",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "author_avatar_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "author_date": {
      "type": "string",
      "format": "date-time"
    },
    "author_email": {
      "type": [
        "string",
        "null"
      ],
      "format": "email"
    },
    "author_html_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "author_id": {
      "type": [
        "string",
        "null"
      ]
    },
    "author_name": {
      "type": "string"
    },
    "author_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "author_username": {
      "type": [
        "string",
        "null"
      ]
    },
    "branch": {
      "type": [
        "string",
        "null"
      ]
    },
    "committer_avatar_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "hash": {
      "type": "string"
    },
    "html_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "human_readable_natural_total_time": {
      "type": [
        "string",
        "null"
      ]
    },
    "human_readable_total": {
      "type": [
        "string",
        "null"
      ]
    },
    "human_readable_total_with_seconds": {
      "type": [
        "string",
        "null"
      ]
    },
    "is_authored_by_user": {
      "type": "boolean"
    },
    "message": {
      "type": "string"
    },
    "ref": {
      "type": [
        "string",
        "null"
      ]
    },
    "total_seconds": {
      "type": [
        "number",
        "null"
      ],
      "format": "float"
    },
    "truncated_hash": {
      "type": "string"
    },
    "url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    }
  }
}