SMAO API Documentation
Usage

Get aggregated usage for a single partner's organizations

Returns aggregated usage across all customer organizations that belong to the specified partner (MSP), plus a per-organization breakdown.

GET
/partners/{partnerId}/usage
AuthorizationBearer <token>

Long-lived distributor API key scoped to a channel partner on the shared smao instance.

In: header

Path Parameters

partnerIdstring

MongoDB ObjectId of the partner (MSP).

Match^[a-fA-F0-9]{24}$

Query Parameters

fromstring

Start date in YYYY-MM-DD format, inclusive.

Formatdate
tostring

End date in YYYY-MM-DD format, inclusive.

Formatdate

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.smao.ai/api/distributor/v1/partners/string/usage?from=2019-08-24&to=2019-08-24"
{
  "status": "success",
  "period": {
    "from": "2019-08-24",
    "to": "2019-08-24"
  },
  "totals": {
    "calls": {
      "count": 0,
      "minutes": 0
    },
    "forwards": {
      "count": 0,
      "minutes": 0
    },
    "assistants": 0,
    "sms": {
      "count": 0,
      "segments": 0
    },
    "whatsapp": 0
  },
  "organizationCount": 0,
  "organizations": [
    {
      "id": "string",
      "name": "string",
      "externalCustomerId": "string",
      "usage": {
        "calls": {
          "count": 0,
          "minutes": 0
        },
        "forwards": {
          "count": 0,
          "minutes": 0
        },
        "assistants": 0,
        "sms": {
          "count": 0,
          "segments": 0
        },
        "whatsapp": 0
      }
    }
  ]
}
{
  "status": "error",
  "errorCode": "INVALID_DATE_RANGE",
  "message": "from and to must be valid YYYY-MM-DD values"
}
{
  "status": "error",
  "errorCode": "INVALID_DATE_RANGE",
  "message": "from and to must be valid YYYY-MM-DD values"
}
{
  "status": "error",
  "errorCode": "INVALID_DATE_RANGE",
  "message": "from and to must be valid YYYY-MM-DD values"
}
{
  "status": "error",
  "errorCode": "INVALID_DATE_RANGE",
  "message": "from and to must be valid YYYY-MM-DD values"
}

{
  "status": "error",
  "errorCode": "RATE_LIMITED",
  "message": "Too many requests for this API key."
}
{
  "status": "error",
  "errorCode": "INVALID_DATE_RANGE",
  "message": "from and to must be valid YYYY-MM-DD values"
}

{
  "status": "error",
  "errorCode": "RATE_LIMIT_UNAVAILABLE",
  "message": "Rate limit storage is unavailable. Try again shortly."
}