Skip to content
FloralityDocs
ChangelogGet an API key

Getting started

  • Quickstart
  • Authentication
  • Scopes
  • Privacy buckets
  • Rate limits
  • Errors
  • Versioning
  • Terminology
  • Webhooks PRO

Resources

  • Members
  • Groups
  • Entries
  • Front
  • Appearance
  • Custom fields
  • Trash
  • Search
  • Member statuses
  • Systems
  • Messaging
  • Privacy buckets
  • Terminology
  • Friends
  • Subscriptions
  • Billing
  • Import
  • Social
  • Guestbook & poll
  • Group layout
  • Activity
Docs/Resources/get messaging channels channelid messages newer
Florality

Organise your system. One front at a time.

Get started

Product

  • Features
  • Pricing
  • Docs
  • Changelog
  • Security

Company

  • About
  • Our team
  • Blog
  • Contact

Resources

  • FAQ
  • Trust and Safety
  • Public REST API

Legal

  • Privacy Policy
  • Terms of Service
  • Refunds and cancellation

© 2026 Florality. All rights reserved.

Florality
MessagingList messages newer

List messages newer

Returns messages newer accessible to the API key’s account.

GET
/api/v1/messaging/channels/{channelId}/messages/newer
messaging: read1,000 requests/minute/key · all plans

Active API keys: Free 1, Pro 5, Pro+ 5. The request rate is the same on every plan.

Message storage
Message text is encrypted at rest and decrypted for authorised requests. Channel access is restricted to spaces owned by the API key’s account; missing or inaccessible channels return 404. Editing or deleting a message additionally checks its author and can return 403.

Parameters

Path parameters

NameTypeRequiredDescription
channelIdstring (uuid)RequiredIdentifier of the channel.

Query parameters

NameTypeRequiredDescription
afterCreatedAtintegerRequiredFilter or option: after created at. Minimum: 0.
afterIdstring (uuid)RequiredFilter or option: after id.
limitintegerOptionalFilter or option: limit. Default: 50. Minimum: 1. Maximum: 150.

Behaviour and pagination

Both afterCreatedAt and afterId are required. They identify the message after which newer results are requested.

Response schema

200

Successful response.

NameTypeRequiredDescription
itemsarray<object>RequiredItems returned by this request.
items[].idstringRequiredUnique identifier.
items[].userIdnull | stringRequiredOwning account identifier.
items[].updatedAtnumberRequiredMost recent update time.
items[].createdAtnumberRequiredCreation time.
items[].deletedAtnull | numberRequiredDeletion time; null when active.
items[].versionnumberRequiredVersion used for optimistic concurrency checks.
items[].spaceIdstringRequiredSpace Id.
items[].channelIdstringRequiredChannel Id.
items[].authorUserIdstringRequiredAuthor User Id.
items[].authorMemberIdnull | stringRequiredAuthor Member Id.
items[].authorMemberDisplayNamenull | stringRequiredAuthor Member Display Name.
items[].authorMemberAvatarRefnull | stringRequiredAuthor Member Avatar Ref.
items[].messageTypestringRequiredMessage Type.
items[].replyToMessageIdnull | stringRequiredReply To Message Id.
items[].encryptionVersionnumberRequiredEncryption Version.
items[].encryptionKeyIdstringRequiredEncryption Key Id.
items[].encryptionIvstringRequiredEncryption Iv.
items[].encryptionAuthTagstringRequiredEncryption Auth Tag.
items[].contentFormatstringRequiredContent Format.
items[].gifMetadataJSON valueRequiredGif Metadata.
items[].editedAtnull | numberRequiredEdited At.
items[].contentstringRequiredText content.
items[].attachmentsarray<object>RequiredAttachments.
items[].attachments[].idstringRequiredUnique identifier.
items[].attachments[].userIdnull | stringRequiredOwning account identifier.
items[].attachments[].createdAtnumberRequiredCreation time.
items[].attachments[].sortOrdernumberRequiredSort Order.
items[].attachments[].spaceIdstringRequiredSpace Id.
items[].attachments[].messageIdstringRequiredMessage Id.
items[].attachments[].storageRefstringRequiredStorage Ref.
items[].attachments[].fileNamestringRequiredFile Name.
items[].attachments[].mimeTypestringRequiredMime Type.
items[].attachments[].byteSizenumberRequiredByte Size.
items[].attachments[].widthnull | numberRequiredWidth.
items[].attachments[].heightnull | numberRequiredHeight.
items[].attachments[].durationMsnull | numberRequiredDuration Ms.
items[].attachments[].attachmentKindstringRequiredAttachment Kind.
items[].linkPreviewsarray<object>RequiredLink Previews.
items[].linkPreviews[].idstringRequiredUnique identifier.
items[].linkPreviews[].spaceIdstringRequiredSpace Id.
items[].linkPreviews[].channelIdstringRequiredChannel Id.
items[].linkPreviews[].messageIdstringRequiredMessage Id.
items[].linkPreviews[].urlstringRequiredUrl.
items[].linkPreviews[].canonicalUrlnull | stringRequiredCanonical Url.
items[].linkPreviews[].finalUrlnull | stringRequiredFinal Url.
items[].linkPreviews[].domainstringRequiredDomain.
items[].linkPreviews[].siteNamenull | stringRequiredSite Name.
items[].linkPreviews[].titlenull | stringRequiredDisplay title.
items[].linkPreviews[].descriptionnull | stringRequiredDescription of the resource.
items[].linkPreviews[].imageUrlnull | stringRequiredImage Url.
items[].linkPreviews[].imageWidthnull | numberRequiredImage Width.
items[].linkPreviews[].imageHeightnull | numberRequiredImage Height.
items[].linkPreviews[].faviconUrlnull | stringRequiredFavicon Url.
items[].linkPreviews[].providerNamenull | stringRequiredProvider Name.
items[].linkPreviews[].statusstringRequiredStatus. Allowed values: "pending", "blocked", "success", "failed", "dismissed".
items[].linkPreviews[].errorCodenull | stringRequiredError Code.
items[].linkPreviews[].contentTypenull | stringRequiredContent Type.
items[].linkPreviews[].httpStatusnull | numberRequiredHttp Status.
items[].linkPreviews[].previewOrdernumberRequiredPreview Order.
items[].linkPreviews[].fetchedAtnull | numberRequiredFetched At.
items[].linkPreviews[].createdAtnumberRequiredCreation time.
items[].linkPreviews[].updatedAtnumberRequiredMost recent update time.
items[].authorMemberAvatarUrlnull | stringRequiredAuthor Member Avatar Url.
items[].authorMemberProfileStylenull | objectRequiredAuthor Member Profile Style.
items[].authorMemberProfileStyle.avatarRingobjectOptionalAvatar Ring.
items[].authorMemberProfileStyle.bannerFrameobjectOptionalBanner Frame.
items[].authorMemberProfileStyle.memberNameobjectOptionalMember Name.
items[].authorMemberProfileStyle.bannerImageobjectOptionalBanner Image.
items[].authorMemberProfileStyle.avatarImageobjectOptionalAvatar Image.
items[].authorMemberProfileStyle.bannerOverlaystringOptionalBanner Overlay. Allowed values: "none", "vignette", "soft-gradient", "film-grain", "glass-blur", "pattern-dots", "pattern-grid".
items[].authorMemberProfileStyle.profileBackgroundPatternstringOptionalProfile Background Pattern. Allowed values: "grid", "none", "dots", "noise".
items[].authorMemberProfileStyle.heroLayoutstringOptionalHero Layout. Allowed values: "shell-default", "avatar-centered", "avatar-left".
items[].authorMemberProfileStyle.accentColorHexnull | stringOptionalAccent Color Hex.
items[].authorMemberProfileStyle.profileBackgroundFillobjectOptionalProfile Background Fill.
items[].authorMemberProfileStyle.pageBackgroundFillobjectOptionalPage Background Fill. Friend-only: full Friends viewport backdrop (solid/gradient).
items[].authorMemberProfileStyle.panelBackgroundFillobjectOptionalPanel Background Fill. Friend-only: profile card panel fill (free: preset solids; Pro+: custom solid/gradient).
items[].authorMemberProfileStyle.panelFillAccentHexnull | stringOptionalPanel Fill Accent Hex. Friend-only: optional accent mixed into the profile panel backdrop (Pro+).
items[].authorMemberProfileStyle.panelCardAccentHexnull | stringOptionalPanel Card Accent Hex. Friend-only: optional accent mixed into section cards (Pro+).
items[].authorMemberSystemTagnull | objectRequiredAuthor Member System Tag.
items[].authorMemberSystemTag.namestringRequiredName of the resource.
items[].authorMemberSystemTag.codestringRequiredCode.
items[].authorMemberSystemTag.colorstringRequiredColor.
items[].authorMemberSystemTag.iconstringOptionalIcon.
items[].replyTonull | objectRequiredReply To.
items[].replyTo.idstringRequiredUnique identifier.
items[].replyTo.authorMemberIdnull | stringRequiredAuthor Member Id.
items[].replyTo.authorMemberDisplayNamenull | stringRequiredAuthor Member Display Name.
items[].replyTo.authorMemberAvatarUrlnull | stringRequiredAuthor Member Avatar Url.
items[].replyTo.authorMemberProfileStylenull | objectRequiredAuthor Member Profile Style.
items[].replyTo.authorMemberSystemTagnull | objectRequiredAuthor Member System Tag.
items[].replyTo.snippetstringRequiredSnippet.
items[].replyTo.deletedAtnull | numberRequiredDeletion time; null when active.
items[].mentionsarray<object>RequiredMentions.
items[].mentions[].typestringRequiredType. Allowed values: "dynamic", "member".
items[].mentions[].idstringRequiredUnique identifier.
items[].mentions[].labelstringRequiredLabel.
items[].mentions[].hrefnull | stringRequiredHref.
items[].mentions[].isVisiblebooleanRequiredIs Visible.
items[].mentions[].fallbackReasonstringOptionalFallback Reason. Allowed values: "unknown", "hidden", "deleted".
items[].encryptedContentstringRequiredEncrypted Content. Encrypted stored content included by the current service response.
nextNewerCursornull | objectRequiredNext Newer Cursor.
nextNewerCursor.afterCreatedAtnumberRequiredCreation time in milliseconds of the message after which results are requested.
nextNewerCursor.afterIdstringRequiredIdentifier of the message after which results are requested.
pinnedMessageIdsarray<string>RequiredPinned Message Ids.

Errors

400 · JSON error

Request failed (BAD_REQUEST).

401 · JSON error

Missing or invalid API key. Use Authorization: Bearer <token>.

403 · JSON error

Requires messaging: read; ownership or feature restrictions may also deny access.

404 · JSON error

Request failed (NOT_FOUND).

409 · JSON error

conflict.

429 · JSON error

API rate limit exceeded (1000 requests per minute). Retry shortly.

500 · JSON error

internal server error.

503 · JSON error

Object storage is not configured. Set MinIO (or compatible S3) env vars to upload files.

← Previous endpointList messages around anchorNext endpoint →List messages

Request example

Set FLORALITY_KEY in your environment. These examples use demo identifiers.

Shell
curl --request GET 'https://floralitys.com/api/v1/messaging/channels/11111111-1111-4111-8111-111111111111/messages/newer?afterCreatedAt=1767225600000&afterId=11111111-1111-4111-8111-111111111111' \
  --header "Authorization: Bearer $FLORALITY_KEY"

Responses

Successful response.

JSON
{
  "items": [
    {
      "id": "11111111-1111-4111-8111-111111111111",
      "userId": null,
      "updatedAt": 1767225600000,
      "createdAt": 1767225600000,
      "deletedAt": null,
      "version": 0,
      "spaceId": "11111111-1111-4111-8111-111111111111",
      "channelId": "11111111-1111-4111-8111-111111111111",
      "authorUserId": "11111111-1111-4111-8111-111111111111",
      "authorMemberId": null,
      "authorMemberDisplayName": null,
      "authorMemberAvatarRef": null,
      "messageType": "demo",
      "replyToMessageId": null,
      "encryptionVersion": 0,
      "encryptionKeyId": "11111111-1111-4111-8111-111111111111",
      "encryptionIv": "demo",
      "encryptionAuthTag": "demo",
      "contentFormat": "A note from our demo system.",
      "gifMetadata": {},
      "editedAt": null,
      "content": "A note from our demo system.",
      "attachments": [
        {
          "id": "11111111-1111-4111-8111-111111111111",
          "userId": null,
          "createdAt": 1767225600000,
          "sortOrder": 0,
          "spaceId": "11111111-1111-4111-8111-111111111111",
          "messageId": "11111111-1111-4111-8111-111111111111",
          "storageRef": "demo",
          "fileName": "demo.png",
          "mimeType": "image/png",
          "byteSize": 0,
          "width": null,
          "height": null,
          "durationMs": null,
          "attachmentKind": "demo"
        }
      ],
      "linkPreviews": [
        {
          "id": "11111111-1111-4111-8111-111111111111",
          "spaceId": "11111111-1111-4111-8111-111111111111",
          "channelId": "11111111-1111-4111-8111-111111111111",
          "messageId": "11111111-1111-4111-8111-111111111111",
          "url": "https://example.com/demo",
          "canonicalUrl": null,
          "finalUrl": null,
          "domain": "demo",
          "siteName": null,
          "title": null,
          "description": null,
          "imageUrl": null,
          "imageWidth": null,
          "imageHeight": null,
          "faviconUrl": null,
          "providerName": null,
          "status": "pending",
          "errorCode": null,
          "contentType": null,
          "httpStatus": null,
          "previewOrder": 0,
          "fetchedAt": null,
          "createdAt": 1767225600000,
          "updatedAt": 1767225600000
        }
      ],
      "authorMemberAvatarUrl": null,
      "authorMemberProfileStyle": null,
      "authorMemberSystemTag": null,
      "replyTo": null,
      "mentions": [
        {
          "type": "dynamic",
          "id": "11111111-1111-4111-8111-111111111111",
          "label": "demo",
          "href": null,
          "isVisible": false,
          "fallbackReason": "unknown"
        }
      ],
      "encryptedContent": "A note from our demo system."
    }
  ],
  "nextNewerCursor": null,
  "pinnedMessageIds": [
    "11111111-1111-4111-8111-111111111111"
  ]
}

Example values are illustrative demo data.