Message Usage

Returns daily series and message totals. The response distinguishes total volume, billable messages, and failed/non-billable messages.

GET https://api.platica.mx/v1/usage/messages

Query parameters

ParameterTypeDescriptionRequired
workspacestringFilters the response to one workspace. If omitted, returns all accessible workspaces
startDatestringISO 8601 start date with offset. Defaults to the billing-period start
endDatestringISO 8601 end date with offset. Defaults to the billing-period end
groupByenumtype (default), channel, templateCategory, campaign, or status
modeenumfast (default) uses daily aggregates; full reads transactions for detailed costs
universeenumall (default) includes failed/non-billable messages; billable shows only charged messages

Example: billable messages only

curl "https://api.platica.mx/v1/usage/messages?workspace=g6yCA16pkWl5eXo7KszB&groupBy=status&universe=billable" \
  -H "Authorization: Bearer $PLATICA_API_KEY"

Response

{
  "workspaces": [
    {
      "id": "g6yCA16pkWl5eXo7KszB",
      "name": "My company",
      "billingPeriod": {
        "startDate": "2026-06-01T06:00:00.000Z",
        "endDate": "2026-07-01T05:59:59.999Z"
      },
      "dataSince": "2026-05-21T06:00:00.000Z",
      "universe": "all",
      "usage": {
        "planName": "Growth",
        "credits": 6500,
        "mode": "fast",
        "groupBy": "type",
        "range": {
          "startDate": "2026-06-01T06:00:00.000Z",
          "endDate": "2026-07-01T05:59:59.999Z"
        },
        "freshness": {
          "source": "daily_aggregations",
          "lastUpdated": "2026-06-29T18:31:10.000Z",
          "expectedLagSeconds": 30
        },
        "series": [
          { "date": "2026-06-29T12:00:00.000Z", "group": "Servicio", "value": 180 },
          { "date": "2026-06-29T12:00:00.000Z", "group": "Campaña", "value": 40 }
        ],
        "totalsByGroup": [
          { "group": "Servicio", "messages": 950, "nonBillableMessages": 0, "creditsUsed": 950, "includedValueCentavos": 0, "overageCentavos": 0, "changePct": -11.2 },
          { "group": "Campaña", "messages": 250, "nonBillableMessages": 12, "creditsUsed": 358, "includedValueCentavos": 0, "overageCentavos": 0, "changePct": 0 }
        ],
        "summary": {
          "totalMessages": 1200,
          "billableMessages": 1188,
          "nonBillableMessages": 12,
          "failedMessages": 12,
          "serviceCount": 950,
          "campaignCount": 250,
          "creditsUsed": 1308,
          "credits": 6500,
          "totalChangePct": -8.8,
          "serviceChangePct": -11.2,
          "campaignChangePct": 0
        }
      }
    }
  ],
  "workspacesCount": 1
}

Main fields

FieldDescription
universeRequested universe: all or billable
usage.modeEffective mode. Enterprise always returns fast
usage.groupByApplied grouping dimension
usage.rangeEffective evaluated range
usage.seriesDaily series for the selected universe
usage.totalsByGroup[].messagesGroup messages within the selected universe
usage.totalsByGroup[].nonBillableMessagesGroup messages that are not charged
usage.totalsByGroup[].changePctChange vs the immediately preceding equal-length period. May be null in full mode
usage.summary.totalMessagesTotal volume, including failed/non-billable messages
usage.summary.billableMessagesMessages that are charged
usage.summary.nonBillableMessagesMessages that are not charged
usage.summary.failedMessagesFailed messages; they do not consume balance
usage.summary.creditsUsedCredits consumed (omitted for enterprise)
usage.freshnessSource, latest update, and expected lag

Modes

ModeRecommended use
fastDashboards and monitoring. Includes per-group change and normally lags by seconds
fullExact transaction-based cost reconciliation. Maximum 92 days; per-group changePct may be null