Retrieve feeds — list, count, or list-latest (unified endpoint)

GET /task/v1/feeds/{retrieve-type}

Operation id: retrieveFeedsByType

Description

Unified endpoint for three feed retrieval modes controlled by retrieve-type path variable.

Session-derived values (domain_id, user_id, unit_id, dept_id, profile_id, time_zone_long, lang_code) are always resolved from the auth token and cannot be overridden by query parameters. Query params are auto-converted from snake_case to camelCase. All response keys are returned in snake_case.


Retrieve Types

ValueDescription
listPaginated feed list with cursor-based pagination. Supports projections, sorting, all filters.
countAggregated priority/total counts for a date range. Requires start_date + end_date.
list-latestIncremental delta since a given timestamp for polling. Supports projections but NOT pagination.

Parameter Applicability Matrix

Legend: ✅ = accepted/used | REQ = required | — = not applicable (silently ignored)

Parameterlistcountlist-latestDefault
projectionsall default fields
limit20
starting_afternull
ending_beforenull
start_dateREQ
end_dateREQ
today_from0
from_time0
feed_keysnull
selected_datesnull
cut_off_time0
pin-1
favorite-1
follow-1
message_typenull
statusnull
prioritynull
feed_titlenull
acknowledge_flag-1
promote_to_note_flag-1
com_attr_valnull
msg_attr_valnull
view_typeMV
task_viewP
return_typenull
feed_type_idnull
tagsnull
sort_bynull
sort_ordernull
return_formatJ
filter_idnull
week_datesnull

Cursor-Based Pagination (list only)

  1. Initial request: No cursor params — GET /task/v1/feeds/list?status=N&limit=20
  2. Response includes: has_more, next_cursor (base64 opaque), previous_cursor, last_fetch_time
  3. Next page (forward): ?...&starting_after=<next_cursor value>
  4. Previous page (backward): ?...&ending_before=<previous_cursor value>

Rules:

  • Use only one of starting_after or ending_before per request — providing both → E112
  • Cursors are opaque strings — do not parse or construct them manually
  • limit is clamped to 1–100: values below 1 default to 20, values above 100 cap at 100
  • has_more: false means no further pages in the requested direction

Projections — Default Fields

When projections is omitted, the following 35 fields are returned for each feed object. feed_key is always included regardless of what is requested.

feed_key, feed_title, message_type, status, priority, feed_type, feed_type_id, cluster_id, cluster_child_id, start_date_time, end_date_time, display_launch_date, create_dtm, last_updated_time, task_count, overdue_task_count, pin, favorite_flag, acknowledged_flag, is_confidential, has_survey, title_css, panel_config, assign_to_desc, has_comments, enable_comment, future_feed, show_why_url, has_action, enable_action, show_how_url, has_history, has_user_notes, has_actions, has_contents, has_key_attributes

Projections — Additional Available Fields

These fields are not in the default set but can be explicitly requested:

transaction_key, feed_owner, feed_type_id_desc, ext_link_info, dept_id, end_date_utc, display_start_date, last_action_time_in_millis, profile_id, display_date, has_predecessor, show_acknowledge, last_updated_time_in_millis, event_date, additional_attributes, show_claim, promote_to_note_flag, update_all_mul_asg_task_attr, flag, is_edited, allow_future_quick_links, thread_flag, acknowledge_flag, txn_dtm, lock_status, start_date_utc, unit_id, last_action_time, action_taken_flag, time_to_act, feed_description, feed_params, event_end_date, watch_flag, follow, user_id, feed_task_count, display_end_date

Note: filter_id overrides the standard query path — when provided, the system uses the MwFilterConfig for data retrieval instead of applying the filter params above.


Error Scenarios

ScenarioHTTPError CodeMessage
Missing / invalid X-reflexis-csrf-token-X401E202User session is invalid
Invalid retrieve-type value400E111Invalid retrieve-type. Allowed values: list, count, list-latest
Both starting_after and ending_before provided400E112Cannot use both starting_after and ending_before simultaneously.
Missing start_date for count400E114start_date is required for count.
Missing end_date for count400E115end_date is required for count.
Refresh interval exceeded (list-latest)400E116Refresh interval exceeded maximum allowed limit.
No data found200E404No data found

Error Codes Reference

CodeDescription
E111Invalid retrieve-type path variable
E112Both pagination cursors provided simultaneously
E114Missing start_date for count
E115Missing end_date for count
E116Refresh interval exceeded for list-latest
E202Invalid or expired authentication token
E404No data found for the given filter criteria

Tags: MyWorkFeeds

Parameters

Path parameters

NameTypeRequiredDescription
retrieve-typestringYesRetrieve mode: - list — paginated feed list with cursor-based pagination - count — aggregated count by priority (requires start_date/end_date) - list-latest — incremental delta since last fetch timestamp

Query parameters

NameTypeRequiredDescription
acknowledge_flagintegerNoAcknowledge filter: -1=all, 0=not acknowledged, 1=acknowledged
com_attr_valstringNoCommunication attribute value filter
cut_off_timeinteger (int64)NoCut-off time in epoch ms (list, count)
end_datestringNoEnd date in YYYYMMDD format. Required for count retrieve-type.
ending_beforestringNoBackward pagination cursor — use previous_cursor from previous response (list only)
favoriteintegerNoFavorite filter: -1=all, 0=not favorite, 1=favorite
feed_keysstringNoComma-separated feed keys to check for updates (list-latest only)
feed_titlestringNoText search on feed title (URL-encoded values are auto-decoded)
feed_type_idstringNoFeed type ID filter (e.g. CL0)
filter_idstringNoSystem filter ID — when provided, uses MwFilterConfig for data retrieval (list, list-latest)
followintegerNoFollow filter: -1=all
from_timeinteger (int64)NoEpoch ms of last fetch time — validated against max refresh interval (list-latest only)
limitintegerNoMax records per page (list only; clamped to 1-100)
message_typestringNoFeed message type code (e.g. DOWNLOADFILEMSG, PROJECTEXTRACT, RWS41_ADVERTISE_SHIFT_RES_MANAGER_NOTIFICATIONS)
msg_attr_valstringNoMessage attribute value filter
pinintegerNoPin filter: -1=all, 0=not pinned, 1=pinned
prioritystringNoComma-separated priority integers (e.g. 4 or 1,2,3)
projectionsstringNoComma-separated field names to include in each feed object (list, list-latest). Default set includes 35+ core fields. feed_key is always included. Additional available fields: transaction_key, feed_owner, ext_link_info, dept_id, end_date_utc, additional_attributes, watch_flag, feed_params, etc.
promote_to_note_flagintegerNoPromote-to-note filter: -1=all
return_formatstringNoReturn format (list only): J=JSON
return_typestringNoReturn type filter (e.g. CALENDAR)
selected_datesstringNoComma-separated dates in YYYYMMDD format (e.g. 20260309,20260324). Applies to list, list-latest.
sort_bystringNoComma-separated sort columns (list only): profileId, endDateTime, priority, startDateTime, feedTitle, feedTypeId
sort_orderstringNoComma-separated sort directions matching sort_by (list only): A=ascending, D=descending
start_datestringNoStart date in YYYYMMDD format. Required for count retrieve-type.
starting_afterstringNoForward pagination cursor — use next_cursor from previous response (list only)
statusstringNoComma-separated status codes: N=New, R=Reviewed, P=In Progress, O=Overdue, C=Completed, F=Force-closed, E=Expired
tagsstringNoTags filter
task_viewstringNoDisplay view: P=Project View, T=Task View
today_frominteger (int64)NoEpoch ms for today reference point (list-latest only)
view_typestringNoView type: MV=My View, DV=Department View, SV=Store View
week_datesstringNoComma-separated week dates in YYYYMMDD format (e.g. 20260322,20260323,...,20260328)

Security

  • AuthTokenHeader (apiKey)
    • Session authentication token validated server-side against the user session store.

Responses

200list{feed_details[], previous_cursor, next_cursor, has_more, last_fetch_time} — or E404 no data.

count{count_data: {priorities[], total}}. list-latest{feed_list_latest[], status}.

Content type: application/json

400 — - E111 — invalid retrieve-type

  • E112 — both starting_after and ending_before provided
  • E114 — missing start_date for count
  • E115 — missing end_date for count
  • E116 — refresh interval exceeded for list-latest

Content type: application/json

401 — Missing or invalid X-reflexis-csrf-token-X session token

Content type: application/json

500 — Unexpected server-side error

Content type: application/json

Response models

200list{feed_details[], previous_cursor, next_cursor, has_more, last_fetch_time} — or E404 no data.

count{count_data: {priorities[], total}}. list-latest{feed_list_latest[], status}.

Content type: application/json

Schema

JSON object (structure varies by endpoint).

{
  "type": "object",
  "description": "JSON object (structure varies by endpoint)."
}

Example:

{
  "status": "OK",
  "feed_details": [],
  "previous_cursor": null,
  "next_cursor": "eyJza2lwIjoyMH0=",
  "has_more": true,
  "last_fetch_time": 1774373200310
}

400 — - E111 — invalid retrieve-type

  • E112 — both starting_after and ending_before provided
  • E114 — missing start_date for count
  • E115 — missing end_date for count
  • E116 — refresh interval exceeded for list-latest

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

401 — Missing or invalid X-reflexis-csrf-token-X session token

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E202",
  "response": "User session is invalid"
}

500 — Unexpected server-side error

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E302",
  "response": "Internal server error"
}