summaryrefslogtreecommitdiff
path: root/src/srht_contrib/schemas.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/srht_contrib/schemas.py')
-rw-r--r--src/srht_contrib/schemas.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/srht_contrib/schemas.py b/src/srht_contrib/schemas.py
index 2a00996..bebf93d 100644
--- a/src/srht_contrib/schemas.py
+++ b/src/srht_contrib/schemas.py
@@ -1,6 +1,7 @@
from __future__ import annotations
from datetime import date, datetime
+from typing import Literal
from pydantic import BaseModel, Field, model_validator
@@ -23,7 +24,13 @@ class ContributionDay(BaseModel):
score: float
-class ContributionCalendarResponse(BaseModel):
+class ContributionIndexMetadata(BaseModel):
+ is_indexed: bool
+ last_polled_at: datetime | None = None
+ indexing_state: Literal["pending", "indexed", "error"]
+
+
+class ContributionCalendarResponse(ContributionIndexMetadata):
actor: str
from_date: date = Field(alias="from")
to_date: date = Field(alias="to")
@@ -32,7 +39,7 @@ class ContributionCalendarResponse(BaseModel):
model_config = {"populate_by_name": True}
-class ContributionStatsResponse(BaseModel):
+class ContributionStatsResponse(ContributionIndexMetadata):
actor: str
from_date: date = Field(alias="from")
to_date: date = Field(alias="to")