---
title: "Read All Timeframes for User"
method: GET
path: "/domains/{domain}/users/{user}/timeframes"
tags: ["Timeframes/User"]
---

# Read All Timeframes for User

`GET /domains/{domain}/users/{user}/timeframes`

## Request

- Base URL: `https://ns-api.com/ns-api/v2`
- URL: `https://ns-api.com/ns-api/v2/domains/{domain}/users/{user}/timeframes`
- Auth: HTTP bearer

## Path parameters

- `domain` string, required: This is the main organization name. This is used to link resource to its group/tenant/organization/enterprise. Then using in path for GET you can set to "~" to use the domain name linked to your token/key instead of the domain name itself when reading for your own domain.
- `user` string, required: This is the main user extension for the user account. ~ can be used to mean "my account" which will extract the user from the token/key used for authentication.

## Response `200`

- RecurringTimeframe[]
  - `timeframe-id` string
  - `timeframe-name` string
  - `user` string
  - `domain` string
  - `timeframe-type` string: ```days-of-week```: Days of Week ```specific-dates```: Specific Dates ```holiday```: Holidays ```custom```: Custom ```always```: Always
  - `timeframe-specific-dates-array` TimeframeSpecificDate[]
    - `timeframe-id` string
    - `timeframe-parent-id` string
    - `ordinal-order` number
    - `timeframe-specific-dates-begin-date` string, required: Start date of the specific date period - format: YYYYMMDD
    - `timeframe-specific-dates-begin-time` string, required: Start time of the specific date period - format: hhmm (24 hour)
    - `timeframe-specific-dates-end-date` string, required: End date of the specific date period - format: YYYYMMDD
    - `timeframe-specific-dates-end-time` string, required: End time of the specific date period - format: hhmm (24 hour)
    - `timeframe-recurrence-type` string, required: ```doesNotRecur```: no recurrence ```monthly-on-last-day```: every month on the last day of the month ```monthly-on-first-last```: monthly on the first or last ordinal weekday, e.g.: the first Friday, the last Thursday - note: this will produce potentially unexpected behavior if used with a date that is not the first or last occurrence of that particular weekday ```monthly-on-ordinal-weekday```: can be used for any ordinal weekday that is NOT the first or last occurrence of that weekday in the given month e.g. the third Friday, the second Monday ```monthly-date```: every month on the same day, e.g.: the 14th day, the 29th day - note: if there are months in which the “day” does not occur, the date will not be active during that month, e.g.: the 31st day of February ```yearly-on-selected-dates```: every year on the exact month and day, e.g.: April 30th, September 4th ```annual-month-day```: functionally identical to ```yearly-on-selected-dates``` ```yearly-first```: every year on the first ordinal weekday of the exact month, e.g.: the first Monday of every June, the first Friday of every August - note: this will produce potentially unexpected behavior if used with a date that is not the first occurrence of that particular weekday ```yearly-last```: every year on the last ordinal weekday of the exact month, e.g.: the last Friday of every July, the last Tuesday of every November - note: this will produce potentially unexpected behavior if used with a date that is not the last occurrence of that particular weekday ```custom```: if this option is selected the fields ```timeframe-recurrence-custom-interval```, ```timeframe-recurrence-custom-interval-option```, and ```timeframe-recurrence-custom-interval-count``` must be set correctly to produce any behavior
    - `timeframe-recurrence-custom-interval` string, required: Must be combined with the field ```timeframe-recurrence-custom-interval-count``` ```days```: recur every ```timeframe-recurrence-custom-interval-count``` days ```weeks```: recur every ```timeframe-recurrence-custom-interval-count``` weeks ```months```: recur every ```timeframe-recurrence-custom-interval-count``` months ```years```: recur every ```timeframe-recurrence-custom-interval-count``` years
    - `timeframe-recurrence-custom-interval-count` string, required: Specifies the recurrence count based on the period specified in ```timeframe-recurrence-custom-interval-count``` e.g. 'every 6 days' or 'every 3 months' If the field ```timeframe-recurrence-custom-interval-count``` is set to ```months``` this field determines the count in combination with the option set in ```timeframe-recurrence-custom-interval-option```, if ```timeframe-recurrence-custom-interval``` is set to ```years``` the count is fixed to a value of 1 and will recur every year according to the option set in ```timeframe-recurrence-custom-interval-option```
    - `timeframe-recurrence-custom-interval-option` string, required: If ```timeframe-recurrence-custom-interval``` is set to ```days``` or ```weeks``` this field is not used. This field is for ```months``` and ```years``` only. For ```timeframe-recurrence-custom-interval``` of ```months```: ```monthly-same-day```: recur on the same day of the month, e.g.: the 14th day, the 29th day - note: if there are months in which the “day” does not occur, the date will not be active during that month, e.g.: the 31st day of February ```monthly-ordinal-weekday```: recur on the same ordinal weekday e.g. the third Friday, the second Monday ```monthly-first-last-weekday```: recur on the first or last instance of the selected weekday in the month, e.g.: the first Wednesday, the last Tuesday - note: this will produce potentially unexpected behavior if used with a date that is not the first or last occurrence of that particular weekday ```monthly-on-last-day```: recur on the last day of the month - note: this will produce potentially unexpected behavior if used with a date that is not the last day of the month For ```timeframe-recurrence-custom-interval``` of ```years```: ```yearly-same-day```: recur on the same day of the same month, e.g.: the 10th of May, the 20th of October ```yearly-ordinal-weekday```: recur on the same ordinal weekday of the same month, e.g.: the second Tuesday of April, the third Thursday of November ```yearly-first-last-weekday```: recur on the first or last weekday of the same month, e.g.: the third Wednesday of August, the first Tuesday of December - note: this will produce potentially unexpected behavior if used with a date that is not the first or last occurrence of that particular weekday
    - `timeframe-recurrence-end-option` string, required: ```never```: recurrence will continue indefinitely ```onADate```: recurrence will end on a date, specified in ```timeframe-recurrence-end-date```
    - `timeframe-recurrence-end-date` string, required: End date of the recurrence - format: YYYYMMDD
    - `timeframe-expiry-datetime` string
    - `domain` string
    - `timeframe-recurrence-rrule` string, nullable: The RRULE string, if recurrence is configured
    - `timeframe-next-observance-datetime` number[]: List of the upcoming occurrences of the specific date if recurrence is configured, formatted as epoch timestamp in seconds
    - `timeframe-is-v1` boolean, nullable: Will be set to ```true``` if the specific date is part of a timeframe created before v44.1
  - `timeframe-holiday-array` TimeframeHoliday[]
    - `timeframe-id` string
    - `timeframe-parent-id` string
    - `ordinal-order` number
    - `timeframe-holiday-uuid` string, required: UUID of the holiday as provided by the Holiday API
    - `timeframe-holiday-name` string, required: Name of holiday as provided by the Holiday API
    - `timeframe-holiday-begin-date` string, required: First desired occurrence of the holiday - format: YYYYMMDD
    - `country-abbreviation` string, required: Country of the holiday as provided by the Holiday API
    - `state-province-abbreviation` string, required: Region of the holiday as provided by the Holiday API, formatted according to ISO 3166-2 standard.e.g.:```US-CA``` for California, United States```MX-SIN``` for Sinaloa, Mexico
    - `holiday-api-location-hint` string, required: Locations of the holiday exactly as provided by the Holiday API
    - `timeframe-holiday-begin-time-1` string, required: Beginning of the first time period during which the time frame will take effect on the holiday - format: hhmm
    - `timeframe-holiday-end-time-1` string, required: End of the first time period during which the time frame will take effect on the holiday - format: hhmm
    - `timeframe-holiday-begin-time-2` string, required: Beginning of the second time period, if there is one, during which the time frame will take effect on the holiday - format: hhmm
    - `timeframe-holiday-end-time-2` string, required: End of the second time period, if there is one, during which the time frame will take effect on the holiday - format: hhmm
    - `timeframe-weekly-monday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-tuesday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-wednesday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-thursday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-friday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-saturday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-weekly-sunday-observance-option` string, required: ```observe-on-holiday-only```: Observe only on the exact holiday ```observe-on-holiday-and-next-day```: Observe on the exact holiday and the next day ```observe-on-holiday-and-prior-day```: Observe on the exact holiday and the prior day ```observe-on-exact-date-and-next-workday```: Observe on the exact holiday and the next workday ```observe-on-holiday-and-prior-workday```: Observe on the exact holiday and the prior workday ```observe-on-next-workday```: Observe only on the next workday ```observe-on-prior-workday```: Observe only on the prior workday
    - `timeframe-workweek-list` string, required: Comma-separated list containing days of the week to be considered workdays (minimum of 4, maximum of 6). e.g.: ```M,T,Th,F,S,Su``` would produce a workweek of Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
    - `timeframe-recurrence-type` string, required: ```never```: No recurrence. ```yearlyOnHoliday```: Recurs every year on the holiday.
    - `timeframe-recurrence-end-option` string, required: ```never```: recurs indefinitely. ```onDate```: ends on the date specified in ```recurrence_end_date``` - note: both fields must be set to produce the desired behavior
    - `timeframe-recurrence-end-date` string, required: YYYYMMDD
    - `timeframe-expiry-datetime` string: End date of recurrence - format: YYYYMMDD
    - `domain` string
    - `timeframe-next-observance-datetime` number[]
  - `timeframe-days-of-week-array` TimeframeDOW[]
    - `timeframe-id` string
    - `timeframe-parent-id` string
    - `ordinal-order` number
    - `timeframe-weekly-sunday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Sundays - format: hhmm
    - `timeframe-weekly-sunday-end-time-1` string: End of the first time period during which the time frame will take effect on Sundays - format: hhmm
    - `timeframe-weekly-sunday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Sundays - format: hhmm
    - `timeframe-weekly-sunday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Sundays - format: hhmm
    - `timeframe-weekly-monday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Mondays - format: hhmm
    - `timeframe-weekly-monday-end-time-1` string: End of the first time period during which the time frame will take effect on Mondays - format: hhmm
    - `timeframe-weekly-monday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Mondays - format: hhmm
    - `timeframe-weekly-monday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Mondays - format: hhmm
    - `timeframe-weekly-tuesday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Tuesdays - format: hhmm
    - `timeframe-weekly-tuesday-end-time-1` string: End of the first time period during which the time frame will take effect on Tuesdays - format: hhmm
    - `timeframe-weekly-tuesday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Tuesdays - format: hhmm
    - `timeframe-weekly-tuesday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Tuesdays - format: hhmm
    - `timeframe-weekly-wednesday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Wednesdays - format: hhmm
    - `timeframe-weekly-wednesday-end-time-1` string: End of the first time period during which the time frame will take effect on Wednesdays - format: hhmm
    - `timeframe-weekly-wednesday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Wednesdays - format: hhmm
    - `timeframe-weekly-wednesday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Wednesdays - format: hhmm
    - `timeframe-weekly-thursday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Thursdays - format: hhmm
    - `timeframe-weekly-thursday-end-time-1` string: End of the first time period during which the time frame will take effect on Thursdays - format: hhmm
    - `timeframe-weekly-thursday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Thursdays - format: hhmm
    - `timeframe-weekly-thursday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Thursdays - format: hhmm
    - `timeframe-weekly-friday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Fridays - format: hhmm
    - `timeframe-weekly-friday-end-time-1` string: End of the first time period during which the time frame will take effect on Fridays - format: hhmm
    - `timeframe-weekly-friday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Fridays - format: hhmm
    - `timeframe-weekly-friday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Fridays - format: hhmm
    - `timeframe-weekly-saturday-begin-time-1` string: Beginning of the first time period during which the time frame will take effect on Saturdays - format: hhmm
    - `timeframe-weekly-saturday-end-time-1` string: End of the first time period during which the time frame will take effect on Saturdays - format: hhmm
    - `timeframe-weekly-saturday-begin-time-2` string: Beginning of the second time period, if there is one, during which the time frame will take effect on Saturdays - format: hhmm
    - `timeframe-weekly-saturday-end-time-2` string: End of the second time period, if there is one, during which the time frame will take effect on Saturdays - format: hhmm
    - `timeframe-recurrence-type` string, required: ```weekly```: recur every week ```custom```: if this option is selected the fields ```timeframe-recurrence-begin-date```, ```timeframe-recurrence-custom-interval```, ```timeframe-recurrence-custom-interval-option```, and ```timeframe-recurrence-custom-interval-count``` must be set correctly to produce any behavior
    - `timeframe-recurrence-begin-date` string, required: Start date of the recurrence - format: YYYYMMDD - note: this field is only applicable for the ```timeframe-recurrence-type``` option ```custom```
    - `timeframe-recurrence-custom-interval` string, required: Must be combined with the field ```timeframe-recurrence-custom-interval-count``` ```weeks```: recur every ```timeframe-recurrence-custom-interval-count``` weeks ```months```: recur every ```timeframe-recurrence-custom-interval-count``` months
    - `timeframe-recurrence-custom-interval-count` string, required: Specifies the recurrence count based on the period specified in ```timeframe-recurrence-custom-interval``` e.g. 'every 6 weeks' or 'every 3 months' If the field ```timeframe-recurrence-custom-interval``` is set to ```months``` this field determines the count in combination with the option set in ```timeframe-recurrence-custom-interval-option```
    - `timeframe-recurrence-custom-interval-option` string, required: If ```timeframe-recurrence-custom-interval``` is set to ```weeks``` this field is not used. This field is for ```months``` only. The following options configure recurrence for the Days of Week period according to the start date defined in ```timeframe-recurrence-begin-date```. For ```timeframe-recurrence-custom-interval``` of ```months```: ```monthly-same-day```: recur on the same day of the month, e.g.: the 14th day, the 29th day - note: if there are months in which the “day” does not occur, the Days fo Week will not be active during that month, e.g.: the 31st day of February ```monthly-ordinal-weekday```: recur on any ordinal weekday in the given month e.g. the third Friday, the second Monday ```monthly-first-last-weekday```: recur on the first or last instance of the selected weekday in the month, e.g.: the first Wednesday, the last Tuesday - note: this will produce potentially unexpected behavior if used with a date that is not the first or last occurrence of that particular weekday
    - `timeframe-recurrence-end-option` string, required: ```never```: recurrence will continue indefinitely ```onADate```: recurrence will end on a date, specified in ```timeframe-recurrence-end-date```
    - `timeframe-recurrence-end-date` string, required: End date of the recurrence - format: YYYYMMDD
    - `timeframe-expiry-datetime` string
    - `domain` string
    - `timeframe-next-observance-datetime` number[]: List of the upcoming occurrences of the days of week if ```recurrence``` is configured as ```custom```, formatted as epoch timestamp in seconds
    - `timeframe-recurrence-rrule` string, nullable
    - `timeframe-is-v1` boolean, nullable

## Changes

- **2026-11-03** `bce16087d479`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ns-api/apis/netsapiens-api-v2/changes/domains/:domain/users/:user/timeframes/get.md)

---

[API](https://skmtc.dev/ns-api/apis/netsapiens-api-v2.md) - [All operations](https://skmtc.dev/ns-api/apis/netsapiens-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/ns-api/apis/netsapiens-api-v2/revisions/bce16087d479?raw)
