For the complete documentation index, see llms.txt. This page is also available as Markdown.

Announcements

Announcements provide updates on product releases, completed Ideas feature enhancements, and any changes made to your product. These posts serve as a detailed change-log, keeping users

Announcement object

Announcements have the following fields

Field
Details

idx string

A unique identifier for the announcement

name string

Name of the announcement

slug string

The URL slug of the announcement

excerpt string

Short textual description of the announcement

content string

Content of the announcement (as Markdown)

content_html string

Content of the announcement (as HTML)

reaction_count object

Reactions to the announcement

is_published boolean

Indicates if the announcement is published or not

published_at string

The date & time the announcement was published (UTC timezone) or null if still in draft

created_at string

The date & time the announcement was created (UTC timezone)

updated_at string

The date & time the announcement was last updated (UTC timezone)

author object

Author of this announcement

categories array

Categories associated with this announcement (see Announcement Categories)

ideas array

Ideas associated with this announcement

Endpoints

You can use the following endpoints to manage Announcements

get

Returns a list of announcements

Authorizations
AuthorizationstringRequired

API key in Authorization header with Bearer prefix (recommended)

Query parameters
is_publishedbooleanOptional

Whether to return published announcements, if left empty returns both published and unpublished

limitintegerOptional

Limits the number of items on a page

Default: 20
afterstringOptional

The after cursor - used for pagination

category_idxs[]string[]Optional

Filter to announcements in any of these categories (OR semantics). Idxs not belonging to your company are silently dropped.

published_afterstring · date-timeOptional

ISO 8601 date or datetime. Only announcements published on or after this moment are returned.

Example: 2026-01-01T00:00:00Z
published_beforestring · date-timeOptional

ISO 8601 date or datetime. Only announcements published on or before this moment are returned.

Example: 2026-04-01T00:00:00Z
Responses
200

Returned a list of Announcements

application/json
get/announcements
GET /v1/announcements HTTP/1.1
Host: api.frill.co
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": [
    {
      "idx": "announcement_abcd1234",
      "name": "New feature release",
      "slug": "new-announcement",
      "excerpt": null,
      "content": "We've released some awesome new features ...",
      "content_html": "We've released some awesome new features ...",
      "reaction_count": {},
      "is_published": true,
      "published_at": "text",
      "created_at": "text",
      "updated_at": "text",
      "author": {
        "idx": "user_abcd1234",
        "name": "John Smith",
        "avatar": "https://example.com/example.jpg"
      },
      "categories": [
        {
          "idx": "category_abcd1234",
          "name": "Improvement",
          "color": "#ff00ff"
        }
      ],
      "ideas": [
        {
          "idx": "idea_abcd1234",
          "name": "New idea"
        }
      ]
    }
  ],
  "pagination": {
    "total": 10,
    "before": "before-cursor",
    "after": "after-cursor"
  }
}
post

Create a new announcement

Authorizations
AuthorizationstringRequired

API key in Authorization header with Bearer prefix (recommended)

Body
namestringRequired

Title of the Announcement

author_idxstringRequired

IDX of the author of the Announcement

contentstringRequired

Announcement content in Markdown format

published_atstringOptional

Date announcement is published (ISO 8601 format) or null for draft

idea_idxsstring[]Optional

IDXs of Ideas to associate with the Announcement

category_idxsstring[]Optional

IDXs of Categories to associate with the Announcement

Responses
200

Returns Announcement

application/json
post/announcements
POST /v1/announcements HTTP/1.1
Host: api.frill.co
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 120

{
  "name": "text",
  "author_idx": "text",
  "content": "text",
  "published_at": "text",
  "idea_idxs": [
    "text"
  ],
  "category_idxs": [
    "text"
  ]
}
{
  "data": {
    "idx": "announcement_abcd1234",
    "name": "New feature release",
    "slug": "new-announcement",
    "excerpt": null,
    "content": "We've released some awesome new features ...",
    "content_html": "We've released some awesome new features ...",
    "reaction_count": {},
    "is_published": true,
    "published_at": "text",
    "created_at": "text",
    "updated_at": "text",
    "author": {
      "idx": "user_abcd1234",
      "name": "John Smith",
      "avatar": "https://example.com/example.jpg"
    },
    "categories": [
      {
        "idx": "category_abcd1234",
        "name": "Improvement",
        "color": "#ff00ff"
      }
    ],
    "ideas": [
      {
        "idx": "idea_abcd1234",
        "name": "New idea"
      }
    ]
  }
}
get

Get an Announcement

Authorizations
AuthorizationstringRequired

API key in Authorization header with Bearer prefix (recommended)

Path parameters
announcementIdxstringRequired

IDX of the Announcement

Responses
200

Returns Announcement

application/json
get/announcements/{announcementIdx}
GET /v1/announcements/{announcementIdx} HTTP/1.1
Host: api.frill.co
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "data": {
    "idx": "announcement_abcd1234",
    "name": "New feature release",
    "slug": "new-announcement",
    "excerpt": null,
    "content": "We've released some awesome new features ...",
    "content_html": "We've released some awesome new features ...",
    "reaction_count": {},
    "is_published": true,
    "published_at": "text",
    "created_at": "text",
    "updated_at": "text",
    "author": {
      "idx": "user_abcd1234",
      "name": "John Smith",
      "avatar": "https://example.com/example.jpg"
    },
    "categories": [
      {
        "idx": "category_abcd1234",
        "name": "Improvement",
        "color": "#ff00ff"
      }
    ],
    "ideas": [
      {
        "idx": "idea_abcd1234",
        "name": "New idea"
      }
    ]
  }
}
post

Update an Announcement

Authorizations
AuthorizationstringRequired

API key in Authorization header with Bearer prefix (recommended)

Path parameters
announcementIdxstringRequired

IDX of the Announcement

Body
namestringRequired

Title of the Announcement

author_idxstringRequired

IDX of the author of the Announcement

contentstringRequired

Announcement content in Markdown format

published_atstringOptional

Date announcement is published (ISO 8601 format) or null for draft

idea_idxsstring[]Optional

IDXs of Ideas to associate with the Announcement

category_idxsstring[]Optional

IDXs of Categories to associate with the Announcement

Responses
200

Returns Announcement

application/json
post/announcements/{announcementIdx}
POST /v1/announcements/{announcementIdx} HTTP/1.1
Host: api.frill.co
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 120

{
  "name": "text",
  "author_idx": "text",
  "content": "text",
  "published_at": "text",
  "idea_idxs": [
    "text"
  ],
  "category_idxs": [
    "text"
  ]
}
{
  "data": {
    "idx": "announcement_abcd1234",
    "name": "New feature release",
    "slug": "new-announcement",
    "excerpt": null,
    "content": "We've released some awesome new features ...",
    "content_html": "We've released some awesome new features ...",
    "reaction_count": {},
    "is_published": true,
    "published_at": "text",
    "created_at": "text",
    "updated_at": "text",
    "author": {
      "idx": "user_abcd1234",
      "name": "John Smith",
      "avatar": "https://example.com/example.jpg"
    },
    "categories": [
      {
        "idx": "category_abcd1234",
        "name": "Improvement",
        "color": "#ff00ff"
      }
    ],
    "ideas": [
      {
        "idx": "idea_abcd1234",
        "name": "New idea"
      }
    ]
  }
}
delete

Delete an Announcement

Authorizations
AuthorizationstringRequired

API key in Authorization header with Bearer prefix (recommended)

Path parameters
announcementIdxstringRequired

IDX of the Announcement

Responses
200

Request was successful

application/json
successbooleanOptional
messagestringOptionalExample: Request was successful
delete/announcements/{announcementIdx}
DELETE /v1/announcements/{announcementIdx} HTTP/1.1
Host: api.frill.co
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "success": true,
  "message": "Request was successful"
}

Last updated