{"database": "jira", "table": "issue_details_raw", "rows": [["DHS-108", "{\"expand\":\"renderedFields,names,schema,operations,editmeta,changelog,versionedRepresentations\",\"id\":\"125470\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470\",\"key\":\"DHS-108\",\"fields\":{\"statuscategorychangedate\":\"2025-09-18T12:31:25.423+0300\",\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10313\",\"id\":\"10313\",\"description\":\"A small, distinct piece of work.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11718?size=medium\",\"name\":\"Task\",\"subtask\":false,\"avatarId\":11718,\"entityId\":\"f8b7c0e2-21aa-496e-930c-f34c1e9668fe\",\"hierarchyLevel\":0},\"components\":[],\"timespent\":null,\"timeoriginalestimate\":null,\"project\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/project/11705\",\"id\":\"11705\",\"key\":\"DHS\",\"name\":\"Date and Holiday Services\",\"projectTypeKey\":\"software\",\"simplified\":true,\"avatarUrls\":{\"48x48\":\"https://traditionasia.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/12916\",\"24x24\":\"https://traditionasia.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/12916?size=small\",\"16x16\":\"https://traditionasia.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/12916?size=xsmall\",\"32x32\":\"https://traditionasia.atlassian.net/rest/api/3/universal_avatar/view/type/project/avatar/12916?size=medium\"}},\"description\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"heading\",\"attrs\":{\"level\":1},\"content\":[{\"type\":\"text\",\"text\":\"FXDateServiceAPI v3 - Raw Data Access Specification\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Status:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" Proposed New Endpoints\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Service:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" \"},{\"type\":\"text\",\"text\":\"FXDateServiceAPI\",\"marks\":[{\"type\":\"code\"}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"API Version:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" v3 (HTTP/2)\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Protocols:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" REST (JSON) and gRPC (Protobuf)\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Data Source:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" Directly from underlying database (Raw Access Layer)\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Goal:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" Provide high-speed, read-only, unprocessed data for downstream clients.\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":2},\"content\":[{\"type\":\"text\",\"text\":\"I. General Service Requirements\"}]},{\"type\":\"orderedList\",\"attrs\":{\"order\":1},\"content\":[{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Data Contract:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" All responses must strictly adhere to the defined schemas (JSON for REST, Protobuf for gRPC).\"}]}]},{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Raw Data Mandate:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" The service layer must act as a transparent proxy. The data returned \"},{\"type\":\"text\",\"text\":\"must be unprocessed\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" and reflect the structure defined by the SQL queries, with only cosmetic adjustments for API standards (e.g., snake_case to camelCase field mapping in the response schema).\"}]}]},{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"HTTP/2 Protocol:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" The service must be deployed supporting HTTP/2 (required for gRPC and recommended for modern REST).\"}]}]},{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Error Handling:\",\"marks\":[{\"type\":\"strong\"}]},{\"type\":\"text\",\"text\":\" Standard gRPC and REST error codes should be used for validation failures (e.g., 400 Bad Request if a required list of codes is empty) and internal errors (e.g., 500 Internal Server Error).\"}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":2},\"content\":[{\"type\":\"text\",\"text\":\"II. Endpoint 1: \"},{\"type\":\"text\",\"text\":\"getHolidays\",\"marks\":[{\"type\":\"code\"}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"1. Purpose\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Retrieves the complete, raw list of holiday dates associated with a set of currency codes, directly from the database structure.\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"2. Database Query\"}]},{\"type\":\"codeBlock\",\"attrs\":{\"language\":\"sql\"},\"content\":[{\"type\":\"text\",\"text\":\"SELECT currency_code, dates\\nFROM holiday_sets\\nWHERE currency_code IN ($currencies);\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"3. REST Endpoint Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"8a0b9db7-cd67-4f90-89f2-dccb5a3cd18a\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GET\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Path\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"/v3/raw/holidays\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Parameters\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"currencyCodes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\": A comma-separated list of 3-letter currency codes (e.g., \"},{\"type\":\"text\",\"text\":\"USD,EUR,GBP\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\"). \"},{\"type\":\"text\",\"text\":\"(Required)\",\"marks\":[{\"type\":\"strong\"}]}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"4. gRPC Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"6f7a8263-8eec-43fb-b3c4-766ddae1dc25\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidays\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Request\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidaysRequest\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated string currency_codes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Response\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidaysResponse\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated HolidaySet raw_holiday_sets\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"5. Response Schema (\"},{\"type\":\"text\",\"text\":\"HolidaySet\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\")\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"34c187c5-1613-4f5d-b5a8-e6fd898156f5\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"REST (JSON) Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"gRPC (Protobuf) Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Type\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Description\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"currencyCode\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"currency_code\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The 3-letter currency code (e.g., USD).\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dates\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dates\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"repeated string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The array of raw dates (ISO 8601 format: \"},{\"type\":\"text\",\"text\":\"YYYY-MM-DD\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\").\"}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":2},\"content\":[{\"type\":\"text\",\"text\":\"III. Endpoint 2: \"},{\"type\":\"text\",\"text\":\"getHolidaysWithTrim\",\"marks\":[{\"type\":\"code\"}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"1. Purpose\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Retrieves holiday dates for specified currencies, but limits (trims) the returned dates to those falling within the inclusive year range provided by the client. \"},{\"type\":\"text\",\"text\":\"The trimming must occur in the database query.\",\"marks\":[{\"type\":\"strong\"}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"2. Database Query\"}]},{\"type\":\"codeBlock\",\"content\":[{\"type\":\"text\",\"text\":\"SELECT\\n    currency_code,\\n    array(\\n        SELECT date_item\\n        FROM unnest(dates) AS date_item\\n        WHERE EXTRACT(YEAR FROM date_item) BETWEEN $fromYearIncl AND $toYearIncl\\n    ) AS dates\\nFROM holiday_sets\\nWHERE currency_code IN ($currencies);\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"3. REST Endpoint Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"04d915b6-64d7-4070-8843-9eb7a11bd801\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GET\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Path\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"/v3/raw/holidays/trimmed\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Parameters\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"currencyCodes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\": Comma-separated list of codes. \"},{\"type\":\"text\",\"text\":\"(Required)\",\"marks\":[{\"type\":\"strong\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\"}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"fromYear\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\": Starting year (inclusive, YYYY). \"},{\"type\":\"text\",\"text\":\"(Required)\",\"marks\":[{\"type\":\"strong\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\"}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"toYear\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\": Ending year (inclusive, YYYY). \"},{\"type\":\"text\",\"text\":\"(Required)\",\"marks\":[{\"type\":\"strong\"}]}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"4. gRPC Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"ea981d4e-a77d-42f7-9be6-da147186c1d6\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidaysWithTrim\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Request\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidaysWithTrimRequest\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated string currency_codes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\", \"},{\"type\":\"text\",\"text\":\"int32 from_year\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\", \"},{\"type\":\"text\",\"text\":\"int32 to_year\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Response\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetHolidaysWithTrimResponse\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated HolidaySet raw_holiday_sets\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"5. Response Schema\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The schema is the same as Endpoint 1 (\"},{\"type\":\"text\",\"text\":\"HolidaySet\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\"). The difference is the content of the \"},{\"type\":\"text\",\"text\":\"dates\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" array, which will be filtered by the database.\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":2},\"content\":[{\"type\":\"text\",\"text\":\"IV. Endpoint 3: \"},{\"type\":\"text\",\"text\":\"getProductsOnly\",\"marks\":[{\"type\":\"code\"}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"1. Purpose\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Retrieves a raw dataset for specific date products based on their product codes. This involves multiple fields from the underlying product table.\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"2. Database Query\"}]},{\"type\":\"codeBlock\",\"content\":[{\"type\":\"text\",\"text\":\"SELECT\\n    date_product_code,\\n    product_type,\\n    ds_is_end_end_convention,\\n    dds_value,\\n    dds_fixing,\\n    dds_pre_spot,\\n    ds_spot_date_from_trade\\nFROM date_product\\nWHERE date_product_code IN ($productCodes);\"}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"3. REST Endpoint Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"099cb468-5a81-463b-8bfa-38b4c3d524d7\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GET\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Path\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"/v3/raw/products\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Parameters\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"productCodes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\": A comma-separated list of product codes. \"},{\"type\":\"text\",\"text\":\"(Required)\",\"marks\":[{\"type\":\"strong\"}]}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"4. gRPC Definition\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"e01d8e0c-b53c-43fd-b3f8-67ff973a6657\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Value\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Method\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetProductsOnly\",\"marks\":[{\"type\":\"code\"}]}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Request\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetProductsOnlyRequest\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated string product_codes\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Response\",\"marks\":[{\"type\":\"strong\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"GetProductsOnlyResponse\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" { \"},{\"type\":\"text\",\"text\":\"repeated DateProduct raw_products\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\" }\"}]}]}]}]},{\"type\":\"heading\",\"attrs\":{\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"5. Response Schema (\"},{\"type\":\"text\",\"text\":\"DateProduct\",\"marks\":[{\"type\":\"code\"}]},{\"type\":\"text\",\"text\":\")\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The field names are mapped from snake_case (SQL) to camelCase (API standard).\"}]},{\"type\":\"table\",\"attrs\":{\"isNumberColumnEnabled\":false,\"layout\":\"center\",\"localId\":\"56421d22-f056-40ab-abf3-2837055c71b8\"},\"content\":[{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"REST (JSON) Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"gRPC (Protobuf) Field\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"SQL Column Name\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Type\"}]}]},{\"type\":\"tableHeader\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Description\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dateProductCode\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"date_product_code\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"date_product_code\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The unique identifier for the date product.\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"productType\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"product_type\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"product_type\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The type of product (e.g., \\\"SPOT\\\", \\\"FORWARD\\\").\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"isEndEndConvention\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"is_end_end_convention\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"ds_is_end_end_convention\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"bool\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Indicates if the product uses end-end convention.\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"ddsValue\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_value\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_value\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The date value associated with the product.\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"ddsFixing\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_fixing\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_fixing\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The fixing date value.\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"ddsPreSpot\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_pre_spot\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"dds_pre_spot\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The pre-spot date value.\"}]}]}]},{\"type\":\"tableRow\",\"content\":[{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"spotDateFromTrade\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"spot_date_from_trade\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"ds_spot_date_from_trade\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"string\",\"marks\":[{\"type\":\"code\"}]}]}]},{\"type\":\"tableCell\",\"attrs\":{},\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The spot date derived from the trade.\"}]}]}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The current usage of this is from the following Whiteboard code snippet:\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"https://gitlab.traditionasia.com/tfxdeal-whiteboard/whiteboard-mono/-/blob/main/mainservice/src/main/scala/com/traditionasia/utc/whiteboard/date/UTCFXDatabaseAdapter.scala#L56\",\"marks\":[{\"type\":\"link\",\"attrs\":{\"href\":\"https://gitlab.traditionasia.com/tfxdeal-whiteboard/whiteboard-mono/-/blob/main/mainservice/src/main/scala/com/traditionasia/utc/whiteboard/date/UTCFXDatabaseAdapter.scala#L56\"}}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"This spec is also available in \"},{\"type\":\"inlineCard\",\"attrs\":{\"url\":\"https://traditionasia.atlassian.net/wiki/x/DIAC3\"}},{\"type\":\"text\",\"text\":\" \"}]}]},\"fixVersions\":[],\"aggregatetimespent\":null,\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/4\",\"id\":4,\"key\":\"indeterminate\",\"colorName\":\"yellow\",\"name\":\"In Progress\"},\"resolution\":null,\"customfield_11642\":null,\"timetracking\":{},\"security\":null,\"attachment\":[{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/attachment/141678\",\"id\":\"141678\",\"filename\":\"image-20251111-074400.png\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-11T10:52:40.140+0300\",\"size\":156850,\"mimeType\":\"image/png\",\"content\":\"https://traditionasia.atlassian.net/rest/api/3/attachment/content/141678\",\"thumbnail\":\"https://traditionasia.atlassian.net/rest/api/3/attachment/thumbnail/141678\"}],\"aggregatetimeestimate\":null,\"resolutiondate\":null,\"workratio\":-1,\"summary\":\"Add three endpoints to provide raw data to FXDateService API\",\"issuerestriction\":{\"issuerestrictions\":{},\"shouldDisplay\":true},\"watches\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/DHS-108/watchers\",\"watchCount\":3,\"isWatching\":false},\"lastViewed\":\"2026-04-29T10:13:56.582+0300\",\"creator\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"subtasks\":[{\"id\":\"128085\",\"key\":\"DHS-109\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/128085\",\"fields\":{\"summary\":\"implement getHolidays\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}},{\"id\":\"128087\",\"key\":\"DHS-110\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/128087\",\"fields\":{\"summary\":\"implement getHolidaysWithTrim\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}},{\"id\":\"128089\",\"key\":\"DHS-111\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/128089\",\"fields\":{\"summary\":\"impelment getProductsOnly\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}},{\"id\":\"128733\",\"key\":\"DHS-113\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/128733\",\"fields\":{\"summary\":\"test\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}},{\"id\":\"128735\",\"key\":\"DHS-114\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/128735\",\"fields\":{\"summary\":\"MR Revierw\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}},{\"id\":\"129407\",\"key\":\"DHS-115\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/129407\",\"fields\":{\"summary\":\"deploy to dev\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10512\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10512\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10315\",\"id\":\"10315\",\"description\":\"Subtasks track small pieces of work that are part of a larger task.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11716?size=medium\",\"name\":\"Subtask\",\"subtask\":true,\"avatarId\":11716,\"entityId\":\"78aefbc5-bf66-49e0-9812-5b48a5bbefab\",\"hierarchyLevel\":-1}}}],\"created\":\"2025-09-18T12:31:24.953+0300\",\"customfield_11110\":\"1|hzzd8j:\",\"reporter\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"aggregateprogress\":{\"progress\":0,\"total\":0},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"labels\":[],\"customfield_11016\":null,\"environment\":null,\"customfield_11602\":null,\"timeestimate\":null,\"aggregatetimeoriginalestimate\":null,\"versions\":[],\"duedate\":null,\"progress\":{\"progress\":0,\"total\":0},\"issuelinks\":[{\"id\":\"66390\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issueLink/66390\",\"type\":{\"id\":\"10002\",\"name\":\"Dependency\",\"inward\":\"is depended upon by\",\"outward\":\"depends upon\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issueLinkType/10002\"},\"inwardIssue\":{\"id\":\"132095\",\"key\":\"TFXWB-1736\",\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/132095\",\"fields\":{\"summary\":\"Integrate with Date Service RAW API\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10530\",\"description\":\"\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"Done\",\"id\":\"10530\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/3\",\"id\":3,\"key\":\"done\",\"colorName\":\"green\",\"name\":\"Done\"}},\"priority\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/priority/3\",\"iconUrl\":\"https://traditionasia.atlassian.net/images/icons/priorities/major_new.svg\",\"name\":\"3. Medium\",\"id\":\"3\"},\"issuetype\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issuetype/10330\",\"id\":\"10330\",\"description\":\"A small, distinct piece of work.\",\"iconUrl\":\"https://traditionasia.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/11718?size=medium\",\"name\":\"Task\",\"subtask\":false,\"avatarId\":11718,\"entityId\":\"ca005b25-c78e-488c-b776-a3f93db84749\",\"hierarchyLevel\":0}}}}],\"votes\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/DHS-108/votes\",\"votes\":0,\"hasVoted\":false},\"comment\":{\"comments\":[{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/315270\",\"id\":\"315270\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"text\":\"@Sina Hakman\",\"accessLevel\":\"\",\"localId\":\"f7efda22-740a-43d1-ab68-f8928db7d6ae\"}},{\"type\":\"text\",\"text\":\" san,\"},{\"type\":\"hardBreak\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"I have reviewed the current implementation and related specifications.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"I would like to confirm the following three points:\"}]},{\"type\":\"orderedList\",\"attrs\":{\"order\":1},\"content\":[{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"gRPC Support Scope\"}]}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Currently, the FXDateService doesn't appear to have gRPC endpoints exposed externally, only gRPC clients for internal holiday service communication.  \"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"Are we adding new gRPC endpoints for the three raw data APIs (/v3/raw/holidays, /v3/raw/holidays/trimmed, /v3/raw/products) in addition to REST endpoints?  \"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"Or should we focus solely on HTTP/2-enabled REST APIs?\"}]},{\"type\":\"orderedList\",\"attrs\":{\"order\":2},\"content\":[{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"HTTP/2 Implementation Scope\"}]}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Should HTTP/2 support apply to all existing APIs across the entire FXDateService, or only the three new raw data endpoints?  \"}]},{\"type\":\"orderedList\",\"attrs\":{\"order\":3},\"content\":[{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Raw Data\"}]}]}]},{\"type\":\"blockquote\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"The data returned must be unprocessed and reflect the structure defined by the SQL queries.\"}]}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Does this mean you want us to remove the Slick DSL overhead and return direct SQL query results instead of using the current DSL approach?  \"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"Just to confirm, is this mainly intended to improve performance?\"},{\"type\":\"hardBreak\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"created\":\"2025-10-27T11:05:00.767+0300\",\"updated\":\"2025-10-27T11:05:00.767+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/315272\",\"id\":\"315272\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"5e7b17f55146960c33eaf88f\",\"text\":\"@fujimoto\",\"accessLevel\":\"\",\"localId\":\"47dc272e-87d5-4a6e-b719-f3bdbda1aad1\"}},{\"type\":\"text\",\"text\":\" -san, these are very valid questions, thank you. Here are my answers:\"}]},{\"type\":\"orderedList\",\"attrs\":{\"order\":1},\"content\":[{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"gRPC was something that is requested by Andrew. I think we should separate this request from the raw API request. I will create a separate backlog story to support gRPC across date services. So please ignore the gRPC part above. I won\u2019t delete it in the spec as I referred to this description in the new Jira story. \"},{\"type\":\"inlineCard\",\"attrs\":{\"url\":\"https://traditionasia.atlassian.net/browse/DHS-112\"}},{\"type\":\"text\",\"text\":\" \"}]}]},{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"As above we can defer implementation of HTTP/2 when we add gRPC.\"}]}]},{\"type\":\"listItem\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"I think we should keep the DSL approach. What is meant here is that we do not add any further logic than what is included in the SQL statements.\"}]}]}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"created\":\"2025-10-27T11:13:38.779+0300\",\"updated\":\"2025-10-27T11:13:38.779+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/315274\",\"id\":\"315274\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Thanks for the clarification, \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"text\":\"@Sina Hakman\",\"accessLevel\":\"\",\"localId\":\"ca8681a9-fd4f-4745-979c-099e32a80156\"}},{\"type\":\"text\",\"text\":\" san.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"That makes sense.\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"created\":\"2025-10-27T11:20:01.929+0300\",\"updated\":\"2025-10-27T11:20:01.929+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/316793\",\"id\":\"316793\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"text\":\"@Sina Hakman\",\"accessLevel\":\"\",\"localId\":\"4d4f77c1-e2d8-49d4-a23b-4e8c446755d1\"}},{\"type\":\"text\",\"text\":\"  san,\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"This ticket has been reviewed by Gokhan-san. (The merge into the main branch has not been done yet.\"},{\"type\":\"text\",\"text\":\"DHS-108: Add v3 raw API (!4) \u00b7 Merge requests \u00b7 date-service / fx-date-service \u00b7 GitLab\",\"marks\":[{\"type\":\"link\",\"attrs\":{\"href\":\"https://gitlab.traditionasia.com/date-service/fx-date-service/-/merge_requests/4\"}}]},{\"type\":\"text\",\"text\":\")\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"I\u2019m not fully familiar with the next steps \u2014 is there anything I need to do from my side?\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Also, I\u2019d like to share some feedback from the development process.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"When setting up my local environment, I used Java 8, since the Jenkins file specifies Java 8.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"It compiles successfully, but the service fails to run because logback requires Java 11 or higher.\"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"According to the build.sbt, the container image is using Java 17,\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"so I assume this won\u2019t cause any issue in the production environment due to Java\u2019s backward compatibility.\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-06T07:53:51.384+0300\",\"updated\":\"2025-11-06T07:53:51.384+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/316965\",\"id\":\"316965\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"5e7b17f55146960c33eaf88f\",\"text\":\"@fujimoto\",\"accessLevel\":\"\"}},{\"type\":\"text\",\"text\":\"-san We need \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"5da633bd9810cf0c3ce3a5ac\",\"text\":\"@Gokhan Ozman\",\"accessLevel\":\"\"}},{\"type\":\"text\",\"text\":\"\u2018s help here again. Gokhan can you guide Fujimoto-san on the merge and Java question?\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-07T08:45:04.236+0300\",\"updated\":\"2025-11-07T08:45:04.236+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/316987\",\"id\":\"316987\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5da633bd9810cf0c3ce3a5ac\",\"accountId\":\"5da633bd9810cf0c3ce3a5ac\",\"emailAddress\":\"gokhan.ozman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/48\",\"24x24\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/24\",\"16x16\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/16\",\"32x32\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/32\"},\"displayName\":\"Gokhan Ozman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"5e7b17f55146960c33eaf88f\",\"text\":\"@fujimoto\",\"accessLevel\":\"\"}},{\"type\":\"text\",\"text\":\" - san in our process usually developer merges the code to master after review if there is no further change(review feedback). So you can continue with the merge. \"}]},{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"And about the java version yes, you can merge it like that it won\u2019t be an issue in the server. Actually since it will be deployed to DEV environment first we can see if there is an error there.\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5da633bd9810cf0c3ce3a5ac\",\"accountId\":\"5da633bd9810cf0c3ce3a5ac\",\"emailAddress\":\"gokhan.ozman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/48\",\"24x24\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/24\",\"16x16\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/16\",\"32x32\":\"https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/5da633bd9810cf0c3ce3a5ac/31bcd7e7-5722-492c-becf-dc8e64a5fd17/32\"},\"displayName\":\"Gokhan Ozman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-07T09:59:23.011+0300\",\"updated\":\"2025-11-07T09:59:39.657+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/317584\",\"id\":\"317584\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"text\":\"@Sina Hakman\",\"accessLevel\":\"\",\"localId\":\"295bf6ee-2143-49af-badc-7fcd4ea337af\"}},{\"type\":\"text\",\"text\":\" san, \"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"The deployment to the DEV environment has been completed.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"Integration testing can now be performed in the DEV environment.\"},{\"type\":\"hardBreak\"},{\"type\":\"text\",\"text\":\"Thank you in advance.\"}]},{\"type\":\"mediaSingle\",\"attrs\":{\"width\":637,\"widthType\":\"pixel\",\"layout\":\"align-start\"},\"content\":[{\"type\":\"media\",\"attrs\":{\"type\":\"file\",\"id\":\"e472e502-9c48-4657-a60e-ec7a5606bbea\",\"alt\":\"image-20251111-074400.png\",\"collection\":\"\",\"height\":489,\"width\":840}}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-11T10:52:40.644+0300\",\"updated\":\"2025-11-11T10:52:40.644+0300\",\"jsdPublic\":true},{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment/318474\",\"id\":\"318474\",\"author\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Hi \"},{\"type\":\"mention\",\"attrs\":{\"id\":\"5e7b17f55146960c33eaf88f\",\"text\":\"@fujimoto\",\"accessLevel\":\"\",\"localId\":\"6f4592c1-2d17-4fde-bb27-05e41cec9408\"}},{\"type\":\"text\",\"text\":\"-san, apologies with my delayed reply. I missed this update amongst others. I\u2019ll ask the White board team to start testing. Many thanks.\"}]}]},\"updateAuthor\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=557058%3A53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"accountId\":\"557058:53ccca05-70af-4f79-8c0e-36a31b3d7c44\",\"emailAddress\":\"sina.hakman@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"24x24\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"16x16\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\",\"32x32\":\"https://secure.gravatar.com/avatar/cfbc5f12f120a2de11b0ed9dde1d0c15?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FSH-6.png\"},\"displayName\":\"Sina Hakman\",\"active\":true,\"timeZone\":\"Europe/Minsk\",\"accountType\":\"atlassian\"},\"created\":\"2025-11-14T11:44:29.936+0300\",\"updated\":\"2025-11-14T11:44:29.936+0300\",\"jsdPublic\":true}],\"self\":\"https://traditionasia.atlassian.net/rest/api/3/issue/125470/comment\",\"maxResults\":8,\"total\":8,\"startAt\":0},\"assignee\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/user?accountId=5e7b17f55146960c33eaf88f\",\"accountId\":\"5e7b17f55146960c33eaf88f\",\"emailAddress\":\"tatsushi.fujimoto@traditionasia.com\",\"avatarUrls\":{\"48x48\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"24x24\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"16x16\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\",\"32x32\":\"https://secure.gravatar.com/avatar/763876c0e6fbf47178f08f5df9a6df68?d=https%3A%2F%2Favatar-management--avatars.us-west-2.prod.public.atl-paas.net%2Finitials%2FF-5.png\"},\"displayName\":\"fujimoto\",\"active\":true,\"timeZone\":\"Asia/Tokyo\",\"accountType\":\"atlassian\"},\"worklog\":{\"startAt\":0,\"maxResults\":20,\"total\":0,\"worklogs\":[]},\"updated\":\"2025-12-16T15:57:08.031+0300\",\"status\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/status/10511\",\"description\":\"This work item is being actively worked on at the moment by the assignee.\",\"iconUrl\":\"https://traditionasia.atlassian.net/\",\"name\":\"In Progress\",\"id\":\"10511\",\"statusCategory\":{\"self\":\"https://traditionasia.atlassian.net/rest/api/3/statuscategory/4\",\"id\":4,\"key\":\"indeterminate\",\"colorName\":\"yellow\",\"name\":\"In Progress\"}}}}"]], "columns": ["key", "raw"], "primary_keys": ["key"], "primary_key_values": ["DHS-108"], "units": {}, "query_ms": 4.7578430094290525}