Finopswerk
pod split cost attribution
From one original hourly host cost, raw capacities and reserved/used pod resources, reconstruct max allocation, oversubscription-normalized CPU/memory shares, split/idle costs and namespace totals. CPU:memory weights 9:1; resource quanta are milli-vCPU and milli-GB. Missing usage falls back to reservation; missing host cost or undefined zero-demand idle allocation stays unknown while known errors remain negative. Exact rational specialization, no AWS export-bit, real telemetry/billing or.
POST https://finops.halowerk.com/v1/pod-split-cost-attributionEingaben
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| host_cost_minor | Siehe Schema | Ja | |
| capacity_cpu | integer | Ja | |
| capacity_memory | integer | Ja | |
| pods | array | Ja | |
| report | object | Ja |
Vollständiges Eingabeschema anzeigen
{
"type": "object",
"properties": {
"host_cost_minor": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
{
"type": "null"
}
]
},
"capacity_cpu": {
"type": "integer",
"minimum": 1,
"maximum": 10000
},
"capacity_memory": {
"type": "integer",
"minimum": 1,
"maximum": 20000
},
"pods": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,15}$",
"minLength": 1,
"maxLength": 16
},
"namespace": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,15}$",
"minLength": 1,
"maxLength": 16
},
"reserved_cpu": {
"type": "integer",
"minimum": 0,
"maximum": 20000
},
"used_cpu": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 20000
},
{
"type": "null"
}
]
},
"reserved_memory": {
"type": "integer",
"minimum": 0,
"maximum": 20000
},
"used_memory": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 20000
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"namespace",
"reserved_cpu",
"used_cpu",
"reserved_memory",
"used_memory"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 4
},
"report": {
"type": "object",
"properties": {
"pods": {
"type": "array",
"items": {
"type": "object",
"properties": {
"allocated_cpu": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 20000
},
{
"type": "null"
}
]
},
"allocated_memory": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 20000
},
{
"type": "null"
}
]
},
"cpu_ratio": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"memory_ratio": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"split_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"idle_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"total_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"allocated_cpu",
"allocated_memory",
"cpu_ratio",
"memory_ratio",
"split_cost",
"idle_cost",
"total_cost"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 4
},
"namespaces": {
"type": "array",
"items": {
"type": "object",
"properties": {
"namespace": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{0,15}$",
"minLength": 1,
"maxLength": 16
},
"total_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"namespace",
"total_cost"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 4
},
"cpu_idle_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"memory_idle_cost": {
"anyOf": [
{
"type": "object",
"properties": {
"n": {
"type": "string",
"pattern": "^-?(0|[1-9][0-9]{0,39})$",
"maxLength": 41
},
"d": {
"type": "string",
"pattern": "^[1-9][0-9]{0,39}$",
"maxLength": 40
}
},
"required": [
"n",
"d"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"pods",
"namespaces",
"cpu_idle_cost",
"memory_idle_cost"
],
"additionalProperties": false
}
},
"required": [
"host_cost_minor",
"capacity_cpu",
"capacity_memory",
"pods",
"report"
],
"additionalProperties": false
}Veröffentlichtes Eingabebeispiel
{
"host_cost_minor": 100,
"capacity_cpu": 4000,
"capacity_memory": 16000,
"pods": [
{
"id": "a",
"namespace": "one",
"reserved_cpu": 1000,
"used_cpu": 100,
"reserved_memory": 4000,
"used_memory": 3000
},
{
"id": "b",
"namespace": "two",
"reserved_cpu": 1000,
"used_cpu": 1900,
"reserved_memory": 4000,
"used_memory": 6000
},
{
"id": "c",
"namespace": "one",
"reserved_cpu": 1000,
"used_cpu": 500,
"reserved_memory": 2000,
"used_memory": 2000
}
],
"report": {
"pods": [
{
"allocated_cpu": 1000,
"allocated_memory": 4000,
"cpu_ratio": {
"n": "1",
"d": "4"
},
"memory_ratio": {
"n": "1",
"d": "4"
},
"split_cost": {
"n": "25",
"d": "1"
},
"idle_cost": {
"n": "1525",
"d": "507"
},
"total_cost": {
"n": "14200",
"d": "507"
}
},
{
"allocated_cpu": 1900,
"allocated_memory": 6000,
"cpu_ratio": {
"n": "19",
"d": "40"
},
"memory_ratio": {
"n": "3",
"d": "8"
},
"split_cost": {
"n": "1155",
"d": "26"
},
"idle_cost": {
"n": "1585",
"d": "338"
},
"total_cost": {
"n": "8300",
"d": "169"
}
},
{
"allocated_cpu": 1000,
"allocated_memory": 2000,
"cpu_ratio": {
"n": "1",
"d": "4"
},
"memory_ratio": {
"n": "1",
"d": "8"
},
"split_cost": {
"n": "275",
"d": "13"
},
"idle_cost": {
"n": "875",
"d": "507"
},
"total_cost": {
"n": "11600",
"d": "507"
}
}
],
"namespaces": [
{
"namespace": "one",
"total_cost": {
"n": "8600",
"d": "169"
}
},
{
"namespace": "two",
"total_cost": {
"n": "8300",
"d": "169"
}
}
],
"cpu_idle_cost": {
"n": "45",
"d": "26"
},
"memory_idle_cost": {
"n": "100",
"d": "13"
}
}
}Ergebnis & Dokumentation
Maschinenlesbare Dokumentation dieses Hubs
Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-07, 02:42 UTC.
Weitere Endpunkte dieses Hubs
- Finopswerk0,003 USDC
acquisition goodwill nci bridge
POSThttps://finops.halowerk.com/v1/acquisition-goodwill-nci-bridgeReconstruct ONE acquisition-date business-combination goodwill/NCI bridge from already correctly recognized/measured identifiedassets,assumedliabilities,newcash/noncashconsideration and previouslyheldinterest. EligiblepresentownershipNCI mo
- Finopswerk0,003 USDC
adjusted coupon cashflow ledger
POSThttps://finops.halowerk.com/v1/adjusted-coupon-cashflow-ledgerOriginalcivilstart/tenor/EOM/principal/rateandexplicitcalendars deriveunadjustedaccrualanchors,Following/ModifiedFollowing/Precedingpaymentdates,ACT365Fexactinterestandlastprincipalredemption. OWNanchoredroll/composition;paymentadjustmentdo
- Finopswerk0,003 USDC
aged receivable loss allowance ledger
POSThttps://finops.halowerk.com/v1/aged-receivable-loss-allowance-ledgerReconstruct original receivable aging, four bucket exposures, two scenario loss arrays, probability-weighted allowance, net carrying values and signed adjustment to booked allowance. Caller supplies already-supported present-value-adjusted