{
  "openapi": "3.1.0",
  "info": {
    "title": "Delta Registry — Emerging-Market Sovereign Debt Auction Monitor - Brazil DPMFi",
    "description": "Delta-tracks Brazil's National Treasury domestic bond auction results (LTN, LFT, NTN-B, NTN-F) for new auctions, marginal-rate threshold breaches, and coverage-ratio anomalies. Sourced from the official Tesouro Transparente open-data portal. Financial-grade basis-point precision. Pay-per-event.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/V3i5xKy1kf7vL0Rue/run-sync-get-dataset-items": {
      "post": {
        "operationId": "runEmergingMarketSovereignDebtAuctionMonitor",
        "summary": "Delta-tracks Brazil's National Treasury domestic bond auction results (LTN, LFT, NTN-B, NTN-F) for new auctions, marginal-rate threshold breaches, and coverage-ratio anomalies. Sourced from the official Tesouro Transparente open-data portal. Financial-grade basis-point precision. Pay-per-event.",
        "x-sync-pattern-reason": "Real observed max runtime 5.6s fits safely under GPT Actions' 45s cap — run-sync-get-dataset-items is safe to expose directly.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "years": {
                    "type": "array",
                    "description": "Which registry years of Brazil's National Treasury domestic auction results to check this run. The source publishes one full XLSX file per year (2000-2026 confirmed live at authoring time; 2027 is listed for when it becomes real). Each run fully downloads AND parses every selected year's file - this source has no HEAD/Range support and its ETag header was found to change on every request regardless of content (confirmed live), so there is no cheap way to skip an unchanged year at the file level; the per-record content fingerprint is what avoids re-billing unchanged auctions instead (see AGENTS.md section 1). Files are small (58-85 KB), so this is fast in practice. Defaults to the current ...",
                    "default": [
                      "2026"
                    ],
                    "items": {
                      "type": "string",
                      "enum": [
                        "2000",
                        "2001",
                        "2002",
                        "2003",
                        "2004",
                        "2005",
                        "2006",
                        "2007",
                        "2008",
                        "2009",
                        "2010",
                        "2011",
                        "2012",
                        "2013",
                        "2014",
                        "2015",
                        "2016",
                        "2017",
                        "2018",
                        "2019",
                        "2020",
                        "2021",
                        "2022",
                        "2023",
                        "2024",
                        "2025",
                        "2026",
                        "2027"
                      ]
                    }
                  },
                  "bondTypeFilter": {
                    "type": "array",
                    "description": "Deliver only auctions for these bond types - the real, currently-issued instrument types confirmed live: LTN (zero-coupon, fixed rate), LFT (floating rate, Selic-indexed), NTN-B (inflation-linked, IPCA-indexed), NTN-F (fixed rate, semi-annual coupon). Leave empty to deliver all types. This is a client-side filter applied after parsing (the source's bulk file has no server-side query mechanism), so it does not reduce download size, only which normalized auctions are delivered.",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "LTN",
                        "LFT",
                        "NTN-B",
                        "NTN-F"
                      ]
                    }
                  },
                  "auctionTypeFilter": {
                    "type": "array",
                    "description": "Deliver only these auction types - the real, documented values from the source's own legend: Venda (Sale), Troca (Exchange), Compra (Purchase), Extra Compra (Extraordinary Purchase), Extra Venda (Extraordinary Sale). Leave empty to deliver all types.",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "Venda",
                        "Troca",
                        "Compra",
                        "Extra Compra",
                        "Extra Venda"
                      ]
                    }
                  },
                  "yieldChangeThresholdBps": {
                    "type": "integer",
                    "description": "Fires a notification (webhook/Slack/Teams - does not affect what's pushed to the dataset, only what's flagged as a high-value alert) when a bond type + benchmark's accepted (marginal/cutoff) rate moves by at least this many basis points versus its own last observed value. A real NEW_AUCTION always alerts regardless of this threshold, since there is no 'previous value' to compare against. Set to 0 to alert on any nonzero rate change for an AUCTION_RESULT_REVISED event.",
                    "default": 10,
                    "minimum": 0
                  },
                  "coverageRatioFloor": {
                    "type": "number",
                    "description": "Fires a notification when an auction's coverage ratio (Quantity Accepted / Quantity Tendered - NOT a true bid-to-cover ratio, since this source does not publish total market demand; see AGENTS.md section 3) falls at or below this fraction, signalling weak demand relative to the offered supply. Set to 0 to disable this specific alert.",
                    "default": 0.5,
                    "minimum": 0
                  },
                  "maxItems": {
                    "type": "integer",
                    "description": "Stops the run once this many changed/new auction records have been pushed (and charged, where applicable) across all selected years - this actor's own safety valve. Records not yet reached when the limit is hit are simply re-evaluated fresh next run. Defaults to 50 so a default/test run completes in well under Apify's automated-test window.",
                    "default": 50,
                    "minimum": 1
                  },
                  "deltaStateName": {
                    "type": "string",
                    "description": "Names the persistent Key-Value Store this run's delta memory (per-auction fingerprints, per-year baseline-completion flags, and per-instrument last-observed rate for threshold comparisons, tracked by bond type + auction type + maturity date) lives in. Use a distinct name per independent schedule/filter configuration. Leave as 'default' for a single schedule.",
                    "default": "default"
                  },
                  "resetState": {
                    "type": "boolean",
                    "description": "When true, ignores all previously-remembered auctions, per-year baseline-completion flags, and per-instrument rate history for this deltaStateName and re-baselines from scratch. Use only to deliberately restart monitoring.",
                    "default": false
                  },
                  "onlyNew": {
                    "type": "boolean",
                    "description": "When true (recommended, and the only free-of-charge default), only NEW_AUCTION and AUCTION_RESULT_REVISED events are delivered - never a snapshot of an unchanged auction or a first-run baseline. When false, every matched auction is delivered every run its year is processed, including BASELINE_SNAPSHOT (first run) and AUCTION_UNCHANGED rows.",
                    "default": true
                  },
                  "webhookUrl": {
                    "type": "string",
                    "description": "Any HTTPS endpoint that accepts a JSON POST - receives the full raw event payload with no channel-specific formatting. Independent of Apify's own platform-level webhook system."
                  },
                  "slackWebhookUrl": {
                    "type": "string",
                    "description": "A Slack Incoming Webhook URL created via a Slack App (Slack's current, supported method - not the older 'legacy custom integrations' path). Receives a formatted Slack Block Kit message highlighting the marginal-rate change and coverage ratio on a threshold breach."
                  },
                  "teamsWebhookUrl": {
                    "type": "string",
                    "description": "A Microsoft Teams 'Workflows' webhook URL (the current mechanism as of 2026 - NOT the retired classic Incoming Webhook connector; see README). Receives a formatted Adaptive Card highlighting the same yield/coverage signal as the Slack alert."
                  }
                },
                "required": []
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Array of normalized records from the actor run.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "actorSpecification": 1,
                    "fields": {
                      "$schema": "http://json-schema.org/draft-07/schema#",
                      "type": "object",
                      "required": [
                        "event_type",
                        "record_id",
                        "auction_date",
                        "bond_type",
                        "scraped_at"
                      ],
                      "properties": {
                        "@type": {
                          "type": "string",
                          "enum": [
                            "schema:FinancialProduct"
                          ]
                        },
                        "event_id": {
                          "type": "string"
                        },
                        "event_type": {
                          "type": "string",
                          "enum": [
                            "NEW_AUCTION",
                            "AUCTION_RESULT_REVISED",
                            "AUCTION_UNCHANGED",
                            "BASELINE_SNAPSHOT"
                          ]
                        },
                        "record_id": {
                          "type": "string"
                        },
                        "auction_date": {
                          "type": "string"
                        },
                        "bond_type": {
                          "type": "string"
                        },
                        "auction_type": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "round": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "settlement_date": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "maturity_date": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "benchmark": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "quantity_offered": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "quantity_accepted": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "coverage_ratio": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "average_rate_decimal": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "average_rate_bps": {
                          "type": [
                            "integer",
                            "null"
                          ]
                        },
                        "accepted_rate_decimal": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "accepted_rate_bps": {
                          "type": [
                            "integer",
                            "null"
                          ]
                        },
                        "rate_change_bps": {
                          "type": [
                            "integer",
                            "null"
                          ]
                        },
                        "total_amount_accepted": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "total_amount_accepted_currency": {
                          "type": "string"
                        },
                        "quantity_to_central_bank": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "total_amount_to_central_bank": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "yield_threshold_breached": {
                          "type": "boolean"
                        },
                        "coverage_threshold_breached": {
                          "type": "boolean"
                        },
                        "status_fingerprint": {
                          "type": "string"
                        },
                        "content_fingerprint": {
                          "type": "string"
                        },
                        "is_new": {
                          "type": "boolean"
                        },
                        "scraped_at": {
                          "type": "string"
                        }
                      }
                    },
                    "views": {
                      "overview": {
                        "title": "Overview",
                        "transformation": {
                          "fields": [
                            "event_type",
                            "auction_date",
                            "bond_type",
                            "benchmark",
                            "accepted_rate_decimal",
                            "rate_change_bps",
                            "coverage_ratio",
                            "yield_threshold_breached",
                            "scraped_at"
                          ]
                        },
                        "display": {
                          "component": "table"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-openai-isConsequential": false
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApifyBearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  },
  "security": [
    {
      "ApifyBearerAuth": []
    }
  ]
}