FansquareAPI reference
Open the app

Messages

List sent messages

GET/v1/sent-messages

Lists the messages sent through Fansquare by the agency, most recent first: the send activity of the employees (who sent, to which fan, when, from which surface), without the message content. message_id and media carry the MYM pointers to fetch the content from MYM with your own access. Results can be filtered by employee, creator, source and date range. Fansquare mass sends (campaigns) are not part of this listing.

Served from a statistics projection refreshed about every 15 minutes: a message sent moments ago can be missing until the next refresh, and the projection covers roughly the last 24 months per connected account. sent_by_user_id is null for sends that are not attributed to a tracked employee.

Required scoperead:messages
Rate limit20 requests per minute
curl 'https://api.fansquare.so/v1/sent-messages' \
  -H "Authorization: Bearer $API_KEY" \
  -H "Fansquare-Version: Amethyste"
{
  "data": [
    {
      "id": "0c6e673b-54d6-42c0-a623-1e35236d359a",
      "sent_at": "2026-10-12T21:14:00.000Z",
      "source": "messaging",
      "sent_by_user_id": "ki9DZXxpgGz7KiDqHj88eCxHg56W",
      "creator_id": "m81IhLxdhzDGYs54rNp2",
      "fan_id": "a6df8022-e509-4575-ad28-e29c2d1d42dc",
      "fan_username": "alex_92",
      "is_private_media": true,
      "price_eur": 1500,
      "sale_status": "purchased",
      "message_id": "a75011a9-0287-4cf3-ab3f-825aef61b191",
      "media": [
        {
          "id": "b12eacb2-afea-4959-a0d0-b685e6b49279",
          "type": "photo"
        }
      ]
    }
  ],
  "next_cursor": "KI7cfD0OLcWfeXZb1FTusJpz0nfKiYXPwHCZe-VXBaeQSX1w5BvO5UH-ua-dzNpXOTixzw"
}

Parameters

Headers

  • Fansquare-Versionstringrequired

    API version to pin. Accepts the mineral name or the release date of a version.

Query

  • user_idsstring

    Restrict to messages sent by these employees (Fansquare ids from GET /v1/employees). Comma-separated, 50 max.

  • creator_idsstring

    Restrict to these creators (Fansquare ids from GET /v1/creators). Comma-separated, 50 max.

  • sourcesstring

    Restrict to these sources. Values: messaging, script. Comma-separated, 50 max.

  • startstring

    Only messages sent at or after this date (ISO 8601, inclusive).

    format date-time
  • endstring

    Only messages sent before this date (ISO 8601, exclusive).

    format date-time
  • cursorstring

    Opaque cursor from the previous page (next_cursor).

  • limitinteger

    Page size (1-200).

    Default 50min 1max 200

Response

OK, application/json

  • dataarray of objectsrequired
    • idstringrequired

      Fansquare sent-message id.

    • sent_atstringrequired

      When the message was sent (ISO 8601).

      format date-time
    • sourcestringrequired

      messaging is a one-to-one chat send, script a send made from a saved script. Fansquare mass sends (campaigns) and native MYM pushes never appear in this listing.

      Valuesmessagingscript
    • sent_by_user_idstring | nullrequired

      Fansquare employee id (see GET /v1/employees). null when the send is not attributed to a tracked employee (for example the creator herself). May reference a former employee absent from GET /v1/employees.

    • creator_idstringrequired

      Fansquare creator id (see GET /v1/creators).

    • fan_idstring | nullrequired

      MYM fan id of the recipient. Usable as fan_id on the /v1/accounts routes. null on a few historical rows.

    • fan_usernamestring | nullrequired

      MYM username of the recipient, when known.

    • is_private_mediabooleanrequired

      true when the message carries a private media offer.

    • price_eurinteger | nullrequired

      Price of the attached media, integer cents, EUR. null when the message has no priced media.

    • sale_statusstring | nullrequired

      Status of the media offer: purchased means delivered and paid, pending means awaiting payment or delivery, refused means declined, free covers media delivered at no charge. null for messages without a media offer.

      Valuespurchasedpendingrefusedfree
    • message_idstring | nullrequired

      MYM message id, usable to fetch the message content directly from MYM with your own access. null when the send is not yet reconciled with a MYM message.

    • mediaarray of objectsrequired

      MYM media attached to the message, in display order. Empty for text messages.

      • idstringrequired

        MYM media id.

      • typestringrequired

        photo, video, …

  • next_cursorstring | nullrequired
curl 'https://api.fansquare.so/v1/sent-messages' \
  -H "Authorization: Bearer $API_KEY" \
  -H "Fansquare-Version: Amethyste"
{
  "data": [
    {
      "id": "0c6e673b-54d6-42c0-a623-1e35236d359a",
      "sent_at": "2026-10-12T21:14:00.000Z",
      "source": "messaging",
      "sent_by_user_id": "ki9DZXxpgGz7KiDqHj88eCxHg56W",
      "creator_id": "m81IhLxdhzDGYs54rNp2",
      "fan_id": "a6df8022-e509-4575-ad28-e29c2d1d42dc",
      "fan_username": "alex_92",
      "is_private_media": true,
      "price_eur": 1500,
      "sale_status": "purchased",
      "message_id": "a75011a9-0287-4cf3-ab3f-825aef61b191",
      "media": [
        {
          "id": "b12eacb2-afea-4959-a0d0-b685e6b49279",
          "type": "photo"
        }
      ]
    }
  ],
  "next_cursor": "KI7cfD0OLcWfeXZb1FTusJpz0nfKiYXPwHCZe-VXBaeQSX1w5BvO5UH-ua-dzNpXOTixzw"
}