List walk instances (with filtering, pagination, and sort)

GET /walk/v1/walks/

Operation id: getWalks

Description

Returns a paginated list of walk instances visible to the authenticated user. Supports filtering by status, date range, walk type, category, store unit, schedule type, and view scope. Use walk_count=Y to retrieve only the total record count without payload.

Pagination: Uses no_of_records + reference_data cursor pattern. Supply the reference_data token returned from a previous response to fetch the next page.

Incremental fetch: Set latest_fetch=Y and provide last_fetch (epoch ms) to retrieve only records modified since the previous sync.

Authentication: X-reflexis-csrf-token-X required. Domain and user context are resolved from the session.


Response Structure

Success envelope: top-level walks object next to status (no message, no extra wrapper).

Typical list payload includes walk_list (array), pagination reference_data, and last_fetch_time (all snake_case in JSON). Exact inner shape depends on filters and the walk list query.

{
  "walks": {
    "walk_list": [],
    "reference_data": "...",
    "last_fetch_time": 1710000000000
  },
  "status": "OK"
}
FieldDescription
walksJSON object returned by the walk list query
walks.walk_listWalk instance rows when returning a list (not count-only)
walks.reference_dataOpaque cursor for the next page, when applicable
walks.last_fetch_timeServer timestamp (epoch ms) for incremental sync

When query param walk_count=Y, the service returns a count inside walks (e.g. total_count — includes total_count (count-only mode), not a full walk_list:

{
  "walks": {
    "total_count": 42
  },
  "status": "OK"
}

Pagination

ParameterRole
no_of_recordsPage size (default 20)
reference_dataOpaque cursor — supply from previous response to get next page

View Types

ValueDescription
MMy Walk — walks assigned to the authenticated user (default)
AAll Walk — all walks visible in the user's domain/org
RWalk To Reopen — walks eligible for re-opening

Schedule Types

ValueDescription
AAdhoc (default)
RRepeating
SScheduled

Error Scenarios

ScenarioHTTP StatusMessage
Missing X-reflexis-csrf-token-X header400X-reflexis-csrf-token-X header is mandatory
Invalid or expired token401Invalid or expired token
Internal server error500Error while processing request. Here is the error : <error details>

Error Codes Reference

CodeHTTPDescription
E112400X-reflexis-csrf-token-X header is mandatory
E101400Domain id is mandatory (session payload)
E202401User session is invalid (MyWork)
E204401Invalid or expired token
E500500Unhandled server error

Tags: WalkList

Parameters

Query parameters

NameTypeRequiredDescription
claim_flagstringNoDefault: N Controls whether to filter by walk claim status: - Y — return claimed walks only - N — include non-claimed walks (based on current view context)
cut_off_timeinteger (int64)NoDefault: 0 (no cutoff) Epoch time in milliseconds used as an upper-bound cutoff for date filtering. Records with a walk date after this timestamp are excluded. Pass 0 to disable.
descriptionstringNoPartial-match filter for walk description. Case-insensitive substring search.
due_today_flagstringNoDue-today filter flag: - Y — return walks due today only - N — do not apply due-today-only filter
end_datestringNoEnd date upper bound for the walk visibility window. Format: yyyyMMdd (e.g. 20260430). When omitted, no upper-bound date filter is applied.
filter_cat_typestringNoComma-separated category IDs used to filter walks. Only walks belonging to the specified categories are returned.
filter_unit_idstringNoComma-separated assign-unit IDs to filter walk records. When supplied, only walks assigned to the specified units are returned.
form_unique_idstringNoFilter by a specific walk instance's form_unique_id. Returns the single matching walk instance when provided.
last_fetchstringNoDefault: "0" (no incremental filtering) Epoch time in milliseconds from the previous sync. Only used when latest_fetch=Y. When set, the server returns only records modified since this timestamp (delta/incremental fetch).
latest_fetchstringNoDefault: N Controls incremental fetch mode: - Y — enable incremental fetch; last_fetch is used as the lower-bound timestamp - N — regular (full) fetch; last_fetch is ignored
no_of_recordsintegerNoDefault: 20 Maximum number of records to return in the response. Combined with reference_data for cursor-based pagination. Pass a higher value to fetch more records in a single call.
offline_fetchstringNoDefault: N Offline content filter: - Y — return offline-enabled walks only - N — no offline-only filter (return all walks regardless of offline status)
over_due_flagstringNoOverdue filter flag: - Y — return overdue walks only (past due date with incomplete status) - N — do not apply overdue-only filter
permit_typestringNoPermission scope for filtering applicable walk templates. | Value | Description | |---|---| | C | Conduct — user can conduct this walk | | S | Schedule — user can schedule this walk | | V | View — user can view this walk |
reference_datastringNoOpaque cursor token returned from the previous response. Supply this to retrieve the next page of results without re-fetching already-returned records. Omit on the first call.
schedule_typestringNoSchedule type filter (no server-side default — when omitted all schedule types are considered): - A — Adhoc - R — Repeating - S — Scheduled
sort_bystringNoDefault: walkStartDate Comma-separated sort column(s). Common values: walkStartDate, title, status, creationTime. Pair with sort_order for direction.
sort_orderstringNoDefault: D Comma-separated sort direction(s) matching sort_by positions: - A — Ascending - D — Descending
start_datestringNoStart date lower bound for the walk visibility window. Format: yyyyMMdd (e.g. 20260421). When omitted, no lower-bound date filter is applied.
statusstringNoComma-separated walk status code filter. When omitted, all statuses are returned. | Code | Description | |---|---| | N | Not Started | | I | In Progress | | PA | Pending Authorize | | PR | Pending Review | | PP | Pending Publish | | A | Active | | RC | Recall | | R | Rejected | | WD | Withdrawn | | X | Discard | | EX | Expired |
store_filter_paramsstringNoJSON-encoded advanced store/unit filter criteria string. Provides fine-grained store-hierarchy filtering beyond filter_unit_id.
titlestringNoPartial-match filter for walk title/name. Case-insensitive substring search.
view_typestringNoDefault: M View scope for walk list retrieval: - M — My Walk (walks assigned to the authenticated user) - A — All Walk (all walks visible in the domain) - R — Walk To Reopen (walks eligible for re-opening)
walk_countstringNoDefault: N Count-only mode: - Y — return total count of matching walks only (no payload list) - N — return full walk list payload with pagination
walk_typestringNoWalk template/model identifier filter. When supplied, limits results to walks of the specified walk type/model.

Security

  • ApiKeyHeader (apiKey)
    • APIGEE API key header validated by VerifyAPIKey policy.
  • AuthTokenHeader (apiKey)
    • Session authentication token validated server-side against the user session store. Required on every request. Absence returns HTTP 400; invalid/expired token returns HTTP 401.

Responses

200 — Success — returns a walks object (walk_list for list mode, or e.g. total_count

when walk_count=Y). Application-level errors are also returned as HTTP 200 with status: "ER".

Content type: application/json

400 — Invalid or missing required request parameter.

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

200 — Success — returns a walks object (walk_list for list mode, or e.g. total_count

when walk_count=Y). Application-level errors are also returned as HTTP 200 with status: "ER".

Content type: application/json

Schema

Successful response envelope for Walk APIs.

Named key (most GET endpoints): { "status": "OK", "<resource_key>": <payload> } — e.g. walk_categories, walks, scheduled_walks, walk_types, walk_questions, walk_stores, walk_details, walk_permissions, walk_users. There is no message property.

Default key (multipart POST — create / schedule / submit): { "status": "OK", "response": <object> }.

Nested objects and arrays are emitted in snake_case (internal camelCase field names are normalized in responses).

PropertyTypeRequiredDescription
statusstringYes
responseobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_categoriesarrayNo
walksobjectNoGeneric JSON object — structure varies by endpoint and config type.
scheduled_walksobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_typesarrayNo
walk_questionsobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_storesobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_detailsobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_permissionsobjectNoGeneric JSON object — structure varies by endpoint and config type.
walk_usersarrayNo
{
  "type": "object",
  "description": "Successful response envelope for Walk APIs.\n\n**Named key (most GET endpoints):** `{ \"status\": \"OK\", \"<resource_key>\": <payload> }` — e.g. `walk_categories`,\n`walks`, `scheduled_walks`, `walk_types`, `walk_questions`, `walk_stores`, `walk_details`, `walk_permissions`,\n`walk_users`. There is **no** `message` property.\n\n**Default key (multipart POST — create / schedule / submit):** `{ \"status\": \"OK\", \"response\": <object> }`.\n\nNested objects and arrays are emitted in **snake_case** (internal camelCase field names are normalized in responses).\n",
  "example": {
    "status": "OK",
    "walks": {
      "walk_list": [],
      "last_fetch_time": 1710000000000
    }
  },
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "OK"
      ]
    },
    "response": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_categories": {
      "type": "array",
      "items": {
        "type": "object",
        "description": "A single walk category object.",
        "properties": {
          "domain_id": {
            "type": "integer",
            "description": "Domain identifier for the category."
          },
          "category_name": {
            "type": "string",
            "description": "Display name of the walk category."
          },
          "category_id": {
            "type": "string",
            "description": "Unique category identifier."
          },
          "category_type": {
            "type": "string",
            "description": "Category type code (e.g. `\"W\"` for walk)."
          },
          "category_desc": {
            "type": "string",
            "description": "Category description."
          },
          "creator_name": {
            "type": "string",
            "description": "Username of the category creator."
          },
          "permission": {
            "type": "string",
            "description": "Comma-separated permission flags (e.g. `\"1,1,1,1\"`)."
          },
          "created_by": {
            "type": "string",
            "description": "Login ID of the creator."
          }
        }
      }
    },
    "walks": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "scheduled_walks": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_types": {
      "type": "array",
      "items": {}
    },
    "walk_questions": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_stores": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_details": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_permissions": {
      "type": "object",
      "description": "Generic JSON object — structure varies by endpoint and config type."
    },
    "walk_users": {
      "type": "array",
      "items": {}
    }
  }
}

400 — Invalid or missing required request parameter.

Content type: application/json

Schema

Error envelope shape depends on how the error is produced:

  • HTTP 200 — business or validation failure after the request is accepted: { "status": "ER", "error": "<string or JSON>" } (no errorCode).
  • HTTP 4xx/5xx — structured API error: { "status": "ER", "errorCode": "<code>", "response": "<localized message>" }.

See the global Error Codes Reference in this spec for errorCode values.

PropertyTypeRequiredDescription
statusstringYes
errorCodestringNoStructured error code (Walk or shared session codes; see Error Codes Reference).
responsestringNoHuman-readable message when errorCode is present (HTTP 4xx/5xx responses).
erroroneOfNoPayload for HTTP 200 error bodies (string, array, or object).
{
  "type": "object",
  "description": "Error envelope shape depends on how the error is produced:\n\n- **HTTP 200** — business or validation failure after the request is accepted:\n  `{ \"status\": \"ER\", \"error\": \"<string or JSON>\" }` (no `errorCode`).\n- **HTTP 4xx/5xx** — structured API error:\n  `{ \"status\": \"ER\", \"errorCode\": \"<code>\", \"response\": \"<localized message>\" }`.\n\nSee the global **Error Codes Reference** in this spec for `errorCode` values.\n",
  "example": {
    "status": "ER",
    "errorCode": "E110",
    "response": "model_id is mandatory"
  },
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Structured error code (Walk or shared session codes; see **Error Codes Reference**)."
    },
    "response": {
      "type": "string",
      "description": "Human-readable message when `errorCode` is present (HTTP 4xx/5xx responses)."
    },
    "error": {
      "description": "Payload for HTTP 200 error bodies (string, array, or object).",
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "object"
        }
      ]
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E110",
  "response": "entity_id is mandatory"
}

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

Content type: application/json

Schema

Error envelope shape depends on how the error is produced:

  • HTTP 200 — business or validation failure after the request is accepted: { "status": "ER", "error": "<string or JSON>" } (no errorCode).
  • HTTP 4xx/5xx — structured API error: { "status": "ER", "errorCode": "<code>", "response": "<localized message>" }.

See the global Error Codes Reference in this spec for errorCode values.

PropertyTypeRequiredDescription
statusstringYes
errorCodestringNoStructured error code (Walk or shared session codes; see Error Codes Reference).
responsestringNoHuman-readable message when errorCode is present (HTTP 4xx/5xx responses).
erroroneOfNoPayload for HTTP 200 error bodies (string, array, or object).
{
  "type": "object",
  "description": "Error envelope shape depends on how the error is produced:\n\n- **HTTP 200** — business or validation failure after the request is accepted:\n  `{ \"status\": \"ER\", \"error\": \"<string or JSON>\" }` (no `errorCode`).\n- **HTTP 4xx/5xx** — structured API error:\n  `{ \"status\": \"ER\", \"errorCode\": \"<code>\", \"response\": \"<localized message>\" }`.\n\nSee the global **Error Codes Reference** in this spec for `errorCode` values.\n",
  "example": {
    "status": "ER",
    "errorCode": "E110",
    "response": "model_id is mandatory"
  },
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Structured error code (Walk or shared session codes; see **Error Codes Reference**)."
    },
    "response": {
      "type": "string",
      "description": "Human-readable message when `errorCode` is present (HTTP 4xx/5xx responses)."
    },
    "error": {
      "description": "Payload for HTTP 200 error bodies (string, array, or object).",
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "object"
        }
      ]
    }
  }
}

500 — Unexpected server-side error.

Content type: application/json

Schema

Error envelope shape depends on how the error is produced:

  • HTTP 200 — business or validation failure after the request is accepted: { "status": "ER", "error": "<string or JSON>" } (no errorCode).
  • HTTP 4xx/5xx — structured API error: { "status": "ER", "errorCode": "<code>", "response": "<localized message>" }.

See the global Error Codes Reference in this spec for errorCode values.

PropertyTypeRequiredDescription
statusstringYes
errorCodestringNoStructured error code (Walk or shared session codes; see Error Codes Reference).
responsestringNoHuman-readable message when errorCode is present (HTTP 4xx/5xx responses).
erroroneOfNoPayload for HTTP 200 error bodies (string, array, or object).
{
  "type": "object",
  "description": "Error envelope shape depends on how the error is produced:\n\n- **HTTP 200** — business or validation failure after the request is accepted:\n  `{ \"status\": \"ER\", \"error\": \"<string or JSON>\" }` (no `errorCode`).\n- **HTTP 4xx/5xx** — structured API error:\n  `{ \"status\": \"ER\", \"errorCode\": \"<code>\", \"response\": \"<localized message>\" }`.\n\nSee the global **Error Codes Reference** in this spec for `errorCode` values.\n",
  "example": {
    "status": "ER",
    "errorCode": "E110",
    "response": "model_id is mandatory"
  },
  "required": [
    "status"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Structured error code (Walk or shared session codes; see **Error Codes Reference**)."
    },
    "response": {
      "type": "string",
      "description": "Human-readable message when `errorCode` is present (HTTP 4xx/5xx responses)."
    },
    "error": {
      "description": "Payload for HTTP 200 error bodies (string, array, or object).",
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "object"
        }
      ]
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E500",
  "response": "Unexpected server error."
}