131 lines
3.7 KiB
JSON
131 lines
3.7 KiB
JSON
{
|
|
"schemaVersion": "1.0",
|
|
"contractVersion": "1.0.0",
|
|
"sourceSha256": "da54ff739c6dc5ed6f9390d1fc8a8e138060d7cf19531a80cc91e421d62954a4",
|
|
"principles": {
|
|
"externalProviderIsNotDomainTruth": true,
|
|
"normalizedProjectionBeforeUi": true,
|
|
"provenanceAlwaysVisible": true,
|
|
"sourceObservedReceivedIngestedAreSeparate": true,
|
|
"staleDataNeverLooksFresh": true,
|
|
"rawPayloadRetentionRequiresExplicitPolicy": true,
|
|
"payloadHashForReproducibility": true,
|
|
"providerSpecificFieldsDoNotLeakIntoBusinessScreens": true,
|
|
"cachePolicyIsKbxPolicyNotProviderFact": true
|
|
},
|
|
"datasets": [
|
|
{
|
|
"id": "dataset.opendart.company-profile",
|
|
"providerId": "provider.opendart",
|
|
"providerOperationId": "opendart.company",
|
|
"canonicalType": "company-profile",
|
|
"normalizer": "OpenDartCompanyProfileNormalizer",
|
|
"normalizerVersion": "1.0.0",
|
|
"cacheKeyFields": [
|
|
"corpCode"
|
|
],
|
|
"freshness": {
|
|
"mode": "stale-while-revalidate",
|
|
"freshForSeconds": 86400,
|
|
"maxStaleSeconds": 604800,
|
|
"backgroundRefresh": true
|
|
},
|
|
"snapshot": {
|
|
"rawRetention": "hash-only",
|
|
"normalizedRetentionDays": 365
|
|
},
|
|
"ui": {
|
|
"sourceLabel": "OPENDART",
|
|
"showProviderObservedAt": false,
|
|
"showReceivedAt": true
|
|
}
|
|
},
|
|
{
|
|
"id": "dataset.opendart.disclosures",
|
|
"providerId": "provider.opendart",
|
|
"providerOperationId": "opendart.disclosures",
|
|
"canonicalType": "disclosure-list",
|
|
"normalizer": "OpenDartDisclosureListNormalizer",
|
|
"normalizerVersion": "1.0.0",
|
|
"cacheKeyFields": [
|
|
"corpCode",
|
|
"beginDate",
|
|
"endDate",
|
|
"pageNo",
|
|
"pageCount"
|
|
],
|
|
"freshness": {
|
|
"mode": "stale-while-revalidate",
|
|
"freshForSeconds": 300,
|
|
"maxStaleSeconds": 3600,
|
|
"backgroundRefresh": true
|
|
},
|
|
"snapshot": {
|
|
"rawRetention": "hash-only",
|
|
"normalizedRetentionDays": 90
|
|
},
|
|
"ui": {
|
|
"sourceLabel": "OPENDART",
|
|
"showProviderObservedAt": false,
|
|
"showReceivedAt": true
|
|
}
|
|
},
|
|
{
|
|
"id": "dataset.kis.domestic-stock.current-price",
|
|
"providerId": "provider.kis.market-data",
|
|
"providerOperationId": "kis.domestic-stock.current-price",
|
|
"canonicalType": "market-price",
|
|
"normalizer": "KisCurrentPriceNormalizer",
|
|
"normalizerVersion": "1.0.0",
|
|
"cacheKeyFields": [
|
|
"marketDivisionCode",
|
|
"stockCode",
|
|
"environment"
|
|
],
|
|
"freshness": {
|
|
"mode": "strict",
|
|
"freshForSeconds": 3,
|
|
"maxStaleSeconds": 0,
|
|
"backgroundRefresh": false
|
|
},
|
|
"snapshot": {
|
|
"rawRetention": "hash-only",
|
|
"normalizedRetentionDays": 7
|
|
},
|
|
"ui": {
|
|
"sourceLabel": "KIS",
|
|
"showProviderObservedAt": false,
|
|
"showReceivedAt": true
|
|
}
|
|
},
|
|
{
|
|
"id": "dataset.krx.approved-service",
|
|
"providerId": "provider.krx.openapi",
|
|
"providerOperationId": "krx.approved-service.invoke",
|
|
"canonicalType": "provider-defined",
|
|
"normalizer": "registered-per-approved-service",
|
|
"normalizerVersion": "provider-defined",
|
|
"cacheKeyFields": [
|
|
"serviceId",
|
|
"querySignature"
|
|
],
|
|
"freshness": {
|
|
"mode": "provider-defined",
|
|
"freshForSeconds": null,
|
|
"maxStaleSeconds": null,
|
|
"backgroundRefresh": false,
|
|
"requireExplicitServicePolicy": true
|
|
},
|
|
"snapshot": {
|
|
"rawRetention": "hash-only",
|
|
"normalizedRetentionDays": 30
|
|
},
|
|
"ui": {
|
|
"sourceLabel": "KRX",
|
|
"showProviderObservedAt": false,
|
|
"showReceivedAt": true
|
|
}
|
|
}
|
|
]
|
|
}
|