space.highport.manage.getConsumption

lexicons.highport.space

Schema Diff

+4 -0

From

CID
bafyreiavadn4w7t...
Indexed At
2026-09-04 22:52 UTC
View this version

To

CID
bafyreidxxlrwux2...
Indexed At
2026-09-07 12:02 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "space.highport.manage.getConsumption:output.consumption.freePerDomainBytes" }
  • AddedEdge AddedEdge { src: "space.highport.manage.getConsumption:output.consumption", tgt: "space.highport.manage.getConsumption:output.consumption.freePerDomainBytes", kind: "prop", name: Some("freePerDomainBytes") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "space.highport.manage.getConsumption:output.consumption.freePerDomainBytes" }

Additional Notes

  • Non-breaking: AddedEdge { src: "space.highport.manage.getConsumption:output.consumption", tgt: "space.highport.manage.getConsumption:output.consumption.freePerDomainBytes", kind: "prop", name: Some("freePerDomainBytes") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "The calling identity's allowance for a period: what it was granted, what it has spent, what remains, which entitlements contributed, and which domains it has approved to draw on it. One wallet, spent by the identity's own sites and by its browsing of sender-pays sites alike.",
6 6
      "errors": [
7 7
        {
8 8
          "description": "The period is not a UTC calendar month formatted YYYY-MM.",
9 9
          "name": "InvalidRequest"
10 10
        }
11 11
      ],
12 12
      "output": {
13 13
        "encoding": "application/json",
14 14
        "schema": {
15 15
          "properties": {
16 16
            "approvals": {
17 17
              "description": "Domains this identity agreed to spend its allowance on, with the cap it chose.",
18 18
              "items": {
19 19
                "description": "One identity's standing consent to spend its allowance on one domain.",
20 20
                "properties": {
21 21
                  "approvedAt": {
22 22
                    "description": "When the identity agreed.",
23 23
                    "format": "datetime",
24 24
                    "type": "string"
25 25
                  },
26 26
                  "capBytes": {
27 27
                    "description": "The ceiling the identity chose for this domain. Absent means no ceiling of its own.",
28 28
                    "type": "integer"
29 29
                  },
30 30
                  "domain": {
31 31
                    "description": "The domain approved.",
32 32
                    "type": "string"
33 33
                  }
34 34
                },
35 35
                "required": [
36 36
                  "domain",
37 37
                  "approvedAt"
38 38
                ],
39 39
                "type": "object"
40 40
              },
41 41
              "type": "array"
42 42
            },
43 43
            "consumption": {
44 44
              "description": "One identity's allowance for one period.",
45 45
              "properties": {
46 46
                "byDomain": {
47 47
                  "description": "Spend by domain.",
48 48
                  "items": {
49 49
                    "description": "Where an identity's allowance went.",
50 50
                    "properties": {
51 51
                      "asVisitor": {
52 52
                        "description": "Whether this was somebody else's sender-pays site rather than the caller's own.",
53 53
                        "type": "boolean"
54 54
                      },
55 55
                      "bytesBilled": {
56 56
                        "description": "Billed bytes.",
57 57
                        "type": "integer"
58 58
                      },
59 59
                      "domain": {
60 60
                        "description": "The domain.",
61 61
                        "type": "string"
62 62
                      }
63 63
                    },
64 64
                    "required": [
65 65
                      "domain",
66 66
                      "bytesBilled"
67 67
                    ],
68 68
                    "type": "object"
69 69
                  },
70 70
                  "type": "array"
71 71
                },
72 72
                "entitledBytes": {
73 73
                  "description": "What entitlements contributed.",
74 74
                  "type": "integer"
75 75
                },
76 76
                "entitlements": {
77 77
                  "items": {
78 78
                    "description": "One grant contributing to the allowance. The payment processor's reference is deliberately not exposed.",
79 79
                    "properties": {
80 80
                      "bytesPerPeriod": {
81 81
                        "description": "Bytes this entitlement adds per period.",
82 82
                        "type": "integer"
83 83
                      },
84 84
                      "endsAt": {
85 85
                        "description": "When it ends. Absent for an open-ended grant.",
86 86
                        "format": "datetime",
87 87
                        "type": "string"
88 88
                      },
89 89
                      "startsAt": {
90 90
                        "description": "When it started.",
91 91
                        "format": "datetime",
92 92
                        "type": "string"
93 93
                      }
94 94
                    },
95 95
                    "required": [
96 96
                      "bytesPerPeriod",
97 97
                      "startsAt"
98 98
                    ],
99 99
                    "type": "object"
100 100
                  },
101 101
                  "type": "array"
102 102
                },
103 103
                "freeBytes": {
104 104
                  "description": "The free grant's contribution.",
105 105
                  "type": "integer"
106 106
                },
107 +
                "freePerDomainBytes": {
108 +
                  "description": "The ceiling on what the free grant may spend at any one domain in this period. Purchased quota is not capped this way, and zero means the free grant may not be spent on a third party's site at all. It is the limit that refuses a reader at one domain while their allowance still shows headroom.",
109 +
                  "type": "integer"
110 +
                },
107 111
                "grantedBytes": {
108 112
                  "description": "The free grant plus every active entitlement.",
109 113
                  "type": "integer"
110 114
                },
111 115
                "headerEstimateBytes": {
112 116
                  "description": "The flat per-response constant included in usedBytes. Every byte figure here is an estimate by this much per response, because the edge's access log records the response body only.",
113 117
                  "type": "integer"
114 118
                },
115 119
                "period": {
116 120
                  "description": "The UTC calendar month, YYYY-MM.",
117 121
                  "type": "string"
118 122
                },
119 123
                "periodEndsAt": {
120 124
                  "description": "When the allowance resets.",
121 125
                  "format": "datetime",
122 126
                  "type": "string"
123 127
                },
124 128
                "reconciledAt": {
125 129
                  "description": "When the rollup last confirmed usedBytes against the recorded requests. Absent for a period still in progress.",
126 130
                  "format": "datetime",
127 131
                  "type": "string"
128 132
                },
129 133
                "remainingBytes": {
130 134
                  "description": "What is left, floored at zero.",
131 135
                  "type": "integer"
132 136
                },
133 137
                "usedBytes": {
134 138
                  "description": "Billable bytes spent so far.",
135 139
                  "type": "integer"
136 140
                }
137 141
              },
138 142
              "required": [
139 143
                "period",
140 144
                "periodEndsAt",
141 145
                "grantedBytes",
142 146
                "usedBytes",
143 147
                "remainingBytes",
144 148
                "freeBytes",
145 149
                "entitledBytes",
146 150
                "headerEstimateBytes"
147 151
              ],
148 152
              "type": "object"
149 153
            }
150 154
          },
151 155
          "required": [
152 156
            "consumption"
153 157
          ],
154 158
          "type": "object"
155 159
        }
156 160
      },
157 161
      "parameters": {
158 162
        "properties": {
159 163
          "period": {
160 164
            "description": "A UTC calendar month as YYYY-MM. Defaults to the current one.",
161 165
            "type": "string"
162 166
          }
163 167
        },
164 168
        "type": "params"
165 169
      },
166 170
      "type": "query"
167 171
    }
168 172
  },
169 173
  "id": "space.highport.manage.getConsumption",
170 174
  "lexicon": 1
171 175
}

Compare Other Versions

Lexicon Garden

@