Zulip reminders API

The reminders API from Zulip — 2 operation(s) for reminders.

Operations 3

GET /reminders Get reminders #
POST /reminders Create a message reminder #
DELETE /reminders/{reminder_id} Delete a reminder #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zulip-reminders-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zulip-reminders-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Zulip REST authentication Reminders API
  description: 'Powerful open source group chat

    '
  contact:
    url: https://zulip.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://{subdomain}.zulipchat.com/api/v1
  variables:
    subdomain:
      default: example
- url: '{server}/api/v1'
  variables:
    server:
      default: https://
- url: https://chat.zulip.org/api/v1
- url: http://localhost:9991/api/v1
- url: http://{subdomain}.testserver/json
security:
- basicAuth: []
tags:
- name: reminders
paths:
  /reminders:
    get:
      operationId: get-reminders
      tags:
      - reminders
      summary: Get reminders
      description: 'Fetch all [reminders](/help/schedule-a-reminder) for the

        current user.


        Reminders are messages the user has scheduled to be sent in the

        future to themself.


        **Changes**: New in Zulip 11.0 (feature level 399).

        '
      responses:
        '200':
          description: Success.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/JsonSuccessBase'
                - additionalProperties: false
                  properties:
                    result: {}
                    msg: {}
                    ignored_parameters_unsupported: {}
                    reminders:
                      type: array
                      description: 'Returns all of the current user''s undelivered reminders,

                        ordered by `scheduled_delivery_timestamp` (ascending).

                        '
                      items:
                        $ref: '#/components/schemas/Reminder'
                  example:
                    result: success
                    msg: ''
                    reminders:
                    - reminder_id: 27
                      to:
                      - 6
                      type: private
                      content: Hi
                      rendered_content: <p>Hi</p>
                      scheduled_delivery_timestamp: 1681662420
                      failed: false
                      reminder_target_message_id: 42
    post:
      operationId: create-message-reminder
      tags:
      - reminders
      summary: Create a message reminder
      description: 'Schedule a reminder to be sent to the current user at the specified time. The reminder will link the relevant message.


        **Changes**: New in Zulip 11.0 (feature level 381).

        '
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                message_id:
                  description: 'The ID of the previously sent message to reference in the reminder message.

                    '
                  type: integer
                  example: 1
                scheduled_delivery_timestamp:
                  type: integer
                  description: 'The UNIX timestamp for when the reminder will be sent,

                    in UTC seconds.

                    '
                  example: 5681662420
                note:
                  type: string
                  description: 'A note associated with the reminder shown in the Notification Bot message.


                    **Changes**: New in Zulip 11.0 (feature level 415).

                    '
                  example: This is a reminder note.
      responses:
        '200':
          description: Success.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/JsonSuccessBase'
                - additionalProperties: false
                  properties:
                    result: {}
                    msg: {}
                    ignored_parameters_unsupported: {}
                    reminder_id:
                      type: integer
                      description: 'Unique ID of the scheduled message reminder.

                        '
                  example:
                    msg: ''
                    reminder_id: 42
                    result: success
  /reminders/{reminder_id}:
    delete:
      operationId: delete-reminder
      tags:
      - reminders
      summary: Delete a reminder
      description: 'Delete, and therefore cancel sending, a previously [scheduled

        reminder](/help/schedule-a-reminder).


        **Changes**: New in Zulip 11.0 (feature level 399).

        '
      parameters:
      - name: reminder_id
        in: path
        schema:
          type: integer
        description: 'The ID of the reminder to delete.


          This is different from the unique ID that the message would have

          after being sent.

          '
        required: true
        example: 1
      responses:
        '200':
          $ref: '#/components/responses/SimpleSuccess'
        '404':
          description: Not Found.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/CodedError'
                - description: 'A typical failed JSON response for when no reminder exists

                    with the provided ID:

                    '
                  example:
                    code: BAD_REQUEST
                    result: error
                    msg: Reminder does not exist
components:
  schemas:
    JsonResponseBase:
      type: object
      properties:
        result:
          type: string
    JsonSuccess:
      allOf:
      - $ref: '#/components/schemas/JsonSuccessBase'
      - additionalProperties: false
        properties:
          result: {}
          msg: {}
          ignored_parameters_unsupported: {}
        example:
          msg: ''
          result: success
    IgnoredParametersUnsupported:
      type: array
      items:
        type: string
      description: 'An array of any parameters sent in the request that are not

        supported by the endpoint.


        See [error handling](/api/rest-error-handling#ignored-parameters) documentation

        for details on this and its change history.

        '
    JsonSuccessBase:
      description: '**Changes**: As of Zulip 7.0 (feature level 167), if any

        parameters sent in the request are not supported by this

        endpoint, a successful JSON response will include an

        [`ignored_parameters_unsupported`][ignored_params] array.


        A typical successful JSON response may look like:


        [ignored_params]: /api/rest-error-handling#ignored-parameters

        '
      allOf:
      - $ref: '#/components/schemas/JsonResponseBase'
      - required:
        - result
        - msg
        properties:
          result:
            enum:
            - success
          msg:
            type: string
          ignored_parameters_unsupported:
            $ref: '#/components/schemas/IgnoredParametersUnsupported'
    Reminder:
      type: object
      additionalProperties: false
      description: 'Object containing details of the scheduled message.

        '
      properties:
        reminder_id:
          type: integer
          description: 'The unique ID of the reminder, which can be used to

            delete the reminder.


            This is different from the unique ID that the message would have

            after being sent.

            '
        type:
          type: string
          description: 'The type of the reminder. Always set to `"private"`.

            '
          enum:
          - private
        to:
          type: array
          items:
            type: integer
          description: 'Contains the ID of the user who scheduled the reminder,

            and to which the reminder will be sent.

            '
        content:
          type: string
          description: 'The content/body of the reminder, in [Zulip-flavored Markdown](/help/format-your-message-using-markdown) format.


            See [Markdown message formatting](/api/message-formatting) for details on Zulip''s HTML format.

            '
        rendered_content:
          type: string
          description: 'The content/body of the reminder rendered in HTML.

            '
        scheduled_delivery_timestamp:
          type: integer
          description: 'The UNIX timestamp for when the message will be sent

            by the server, in UTC seconds.

            '
          example: 1595479019
        failed:
          type: boolean
          description: 'Whether the server has tried to send the reminder

            and it failed to successfully send.


            Clients that support unscheduling reminders

            should display scheduled messages with `"failed": true` with an

            indicator that the server failed to send the message at the

            scheduled time, so that the user is aware of the failure and can

            get the content of the scheduled message.

            '
        reminder_target_message_id:
          type: integer
          description: 'The ID of the message that the reminder is created for.

            '
      required:
      - reminder_id
      - type
      - to
      - content
      - rendered_content
      - scheduled_delivery_timestamp
      - failed
      - reminder_target_message_id
    CodedError:
      allOf:
      - $ref: '#/components/schemas/CodedErrorBase'
      - additionalProperties: false
        properties:
          result: {}
          msg: {}
          code: {}
    CodedErrorBase:
      allOf:
      - $ref: '#/components/schemas/JsonResponseBase'
      - required:
        - result
        - msg
        - code
        properties:
          result:
            enum:
            - error
          msg:
            type: string
          code:
            type: string
            description: 'A string that identifies the error.

              '
  responses:
    SimpleSuccess:
      description: Success.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/JsonSuccess'
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: 'Basic authentication, with the user''s email as the username, and the API

        key as the password. The API key can be fetched using the

        `/fetch_api_key` or `/dev_fetch_api_key` endpoints.

        '