---
updatedAt: 2026-08-17T14:37:00.000Z
agentTools:
  projectIndex: https://docs.noves.fi/llms.txt
---

# /{chain}/featuredApps/{providerParty}/compliance/markerAllowance

Returns the marker allowance for a Featured App provider. Supply a completed window of up to 24 hours whose start and end timestamps fall on 10 minute UTC boundaries. The start must fall within the trailing 48 hours. Returns HTTP 503 when data for the requested period is not yet complete.

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "Canton API",
    "description": "Query public and private Canton updates, balances, prices, rewards, verdicts, and Featured App activity. Create stream subscriptions and alerts for ongoing delivery.",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.canton.noves.fi/"
    }
  ],
  "paths": {
    "/{chain}/featuredApps/{providerParty}/compliance/markerAllowance": {
      "get": {
        "tags": [
          "Featured Apps"
        ],
        "summary": "/{chain}/featuredApps/{providerParty}/compliance/markerAllowance",
        "description": "Returns the marker allowance for a Featured App provider. Supply a completed window of up to 24 hours whose start and end timestamps fall on 10 minute UTC boundaries. The start must fall within the trailing 48 hours. Returns HTTP 503 when data for the requested period is not yet complete.",
        "parameters": [
          {
            "name": "chain",
            "in": "path",
            "description": "Canton chain name. Use a name returned by `GET /chains`.",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string",
              "default": "canton",
              "example": "canton"
            }
          },
          {
            "name": "providerParty",
            "in": "path",
            "description": "Exact Canton provider party registered to the Featured App.",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startTimestamp",
            "in": "query",
            "description": "Inclusive start of the requested window, as Unix seconds. Must fall on a 10 minute UTC boundary.",
            "required": true,
            "style": "form",
            "schema": {
              "maximum": 253402300799,
              "minimum": -62135596800,
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "endTimestamp",
            "in": "query",
            "description": "Exclusive end of the requested window, as Unix seconds. Must fall on a 10 minute UTC boundary.",
            "required": true,
            "style": "form",
            "schema": {
              "maximum": 253402300799,
              "minimum": -62135596800,
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "apiKey",
            "in": "header",
            "description": "API Key for Canton API. To generate an API Key, visit https://app.noves.fi",
            "required": true,
            "style": "simple",
            "schema": {
              "type": "string",
              "default": "demokey"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeaturedAppMarkerAllowanceResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "502": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "503": {
            "description": "Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeaturedAppMarkerAllowanceUnavailableDto"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ApiPeriodDto": {
        "required": [
          "endTime",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "startTime": {
            "type": "string",
            "description": "Inclusive start of the response window (ISO 8601).",
            "format": "date-time"
          },
          "endTime": {
            "type": "string",
            "description": "Exclusive end of the response window (ISO 8601).",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Resolved query period with an inclusive start and exclusive end."
      },
      "FeaturedAppMarkerAllowanceFreshnessDto": {
        "required": [
          "isCompleteForRange"
        ],
        "type": "object",
        "properties": {
          "isCompleteForRange": {
            "type": "boolean",
            "description": "Whether every input source is complete for the requested period."
          }
        },
        "additionalProperties": false,
        "description": "Freshness state for a marker allowance calculation."
      },
      "FeaturedAppMarkerAllowanceResponseDto": {
        "required": [
          "dataFreshness",
          "earliestTrafficAvailableAt",
          "guidanceVersion",
          "period",
          "providerParty",
          "totals"
        ],
        "type": "object",
        "properties": {
          "providerParty": {
            "minLength": 1,
            "type": "string",
            "description": "Featured App provider party whose allowance was evaluated."
          },
          "period": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApiPeriodDto"
              }
            ],
            "description": "Resolved query period."
          },
          "guidanceVersion": {
            "minLength": 1,
            "type": "string",
            "description": "Featured App guidance revision used for the calculation."
          },
          "earliestTrafficAvailableAt": {
            "type": "string",
            "description": "Earliest timestamp for which traffic and official marker weight calculations are available.",
            "format": "date-time"
          },
          "totals": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FeaturedAppMarkerAllowanceTotalsDto"
              }
            ],
            "description": "Allowance totals for the full period."
          },
          "dataFreshness": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FeaturedAppMarkerAllowanceFreshnessDto"
              }
            ],
            "description": "Completeness of the marker allowance data for the requested period."
          }
        },
        "additionalProperties": false,
        "description": "Marker allowance for one Featured App provider over a completed window."
      },
      "FeaturedAppMarkerAllowanceTotalsDto": {
        "required": [
          "eligibleMarkerWeight",
          "featuredTransferCount",
          "qualifyingTrafficBytes",
          "qualifyingTrafficUsd",
          "qualifyingTransactionCount",
          "remainingMarkerWeight",
          "submittedMarkerWeight",
          "withinTolerance"
        ],
        "type": "object",
        "properties": {
          "qualifyingTransactionCount": {
            "type": "integer",
            "description": "Number of qualifying third party transactions.",
            "format": "int64"
          },
          "qualifyingTrafficBytes": {
            "type": "integer",
            "description": "Traffic spent by qualifying third party transactions, in bytes.",
            "format": "int64"
          },
          "qualifyingTrafficUsd": {
            "minLength": 1,
            "type": "string",
            "description": "Qualifying third party traffic spend in USD as a decimal string."
          },
          "eligibleMarkerWeight": {
            "minLength": 1,
            "type": "string",
            "description": "Marker weight eligible under the current guidance as a decimal string."
          },
          "submittedMarkerWeight": {
            "minLength": 1,
            "type": "string",
            "description": "Marker weight already submitted as a decimal string."
          },
          "featuredTransferCount": {
            "type": "integer",
            "description": "Number of featured transfers already counted as submitted activity.",
            "format": "int64"
          },
          "remainingMarkerWeight": {
            "minLength": 1,
            "type": "string",
            "description": "Marker weight still available for submission as a decimal string."
          },
          "overageRatio": {
            "type": "string",
            "description": "Total submitted marker weight plus featured transfer count divided by eligible marker weight. Null when eligible marker weight is zero.",
            "nullable": true
          },
          "withinTolerance": {
            "type": "boolean",
            "description": "Whether the overage ratio is absent or at most 1.15."
          }
        },
        "additionalProperties": false,
        "description": "Marker allowance totals for one Featured App provider."
      },
      "FeaturedAppMarkerAllowanceUnavailableDto": {
        "required": [
          "available",
          "period",
          "providerParty"
        ],
        "type": "object",
        "properties": {
          "providerParty": {
            "minLength": 1,
            "type": "string",
            "description": "Featured App provider party whose allowance could not be determined."
          },
          "period": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApiPeriodDto"
              }
            ],
            "description": "Requested query period."
          },
          "available": {
            "type": "boolean",
            "description": "Whether marker allowance data is available for the requested period."
          }
        },
        "additionalProperties": false,
        "description": "Marker allowance availability for a Featured App provider."
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": {}
      }
    }
  }
}
```