> ## Documentation Index
> Fetch the complete documentation index at: https://api.tipee.ch/llms.txt
> Use this file to discover all available pages before exploring further.

# List

> Retrieves all resources of a specific kind, including those with no (or only past) sector contracts. Returns associated details related to that kind. Use the 'resource.team' filter to narrow down the search by contract period (e.g. only currently employed).



## OpenAPI

````yaml preview post /api/directory/resources.list
openapi: 3.1.0
info:
  title: tipee
  version: preview
servers: []
security:
  - basicAuth: []
tags:
  - name: Activity
    description: Activity
  - name: Balances
    description: Balances
  - name: Directory
    description: Directory
  - name: Schedule
    description: Schedule
  - name: Timeclock
    description: Timeclock
paths:
  /api/directory/resources.list:
    post:
      tags:
        - Directory
      summary: List
      description: >-
        Retrieves all resources of a specific kind, including those with no (or
        only past) sector contracts. Returns associated details related to that
        kind. Use the 'resource.team' filter to narrow down the search by
        contract period (e.g. only currently employed).
      operationId: post_app_ui_api_directory_directoryquery_resourceslist
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListResourcesQuery'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceListView'
components:
  schemas:
    ListResourcesQuery:
      required:
        - kind_id
      properties:
        kind_id:
          $ref: '#/components/schemas/Snowflake'
          description: Only the "employee" kind is available at the moment.
        at_date:
          $ref: '#/components/schemas/LocalDate'
          description: If you do not specify a date, today's date will be used.
        attributes:
          description: >-
            Several filters can be used to narrow down the search (except for
            activity rate). Correct filter types should be used based on the
            data type of the attribute. The 'api/directory/kinds.show' endpoint
            gives you information about attribute types and whether you can
            filter or order them.
          type: array
          items:
            type: string
        with_teams:
          description: >-
            Will give additional information about the team they are assigned to
            at the date provided.
          type: boolean
          default: false
        with_relations:
          type:
            - boolean
            - 'null'
          default: false
        with_total_count:
          type: boolean
          default: false
        counting_mode:
          $ref: '#/components/schemas/ResourceCountingMode'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/ListResourcesQueryFilter'
        orders:
          type: array
          items:
            discriminator:
              propertyName: key
            oneOf:
              - required:
                  - key
                properties:
                  key:
                    type: string
                    example: resource.attribute
                    enum:
                      - resource.attribute
                  direction:
                    $ref: '#/components/schemas/QueryOrderDirection'
                  attribute:
                    type: string
                type: object
        pagination:
          $ref: '#/components/schemas/Pagination'
      type: object
    ResourceListView:
      required:
        - data
        - next_token
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ResourceView'
        next_token:
          type:
            - string
            - 'null'
        total_count:
          description: >-
            Total number of resources matching filters in the request; only
            present if parameter "with_total_count" is set to "true".
          type: integer
        total_count_approximate:
          description: >-
            TRUE if the returned number of resources is exact, FALSE if it is
            only an approximation; only present if parameter "with_total_count"
            is set to "true".
          type: boolean
      type: object
    Snowflake:
      type: string
      format: snowflake
      example: '872815618512410358'
    LocalDate:
      type: string
      format: local-date
      example: '2019-11-11'
    ResourceCountingMode:
      type: string
      example: strict
      enum:
        - strict
        - approximate
    ListResourcesQueryFilter:
      discriminator:
        propertyName: key
      oneOf:
        - required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.ids
              enum:
                - resource.ids
            value:
              type: array
              items:
                $ref: '#/components/schemas/Snowflake'
          type: object
        - description: >-
            Filter on a boolean attribute. The attribute identifier is given by
            `attribute_id`.
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.boolean
              enum:
                - resource.boolean
            value:
              $ref: '#/components/schemas/BooleanFilterValue'
          type: object
        - description: >-
            Filter on a choice attribute by selected option identifiers
            (multi-valued, OR semantics).
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.choice
              enum:
                - resource.choice
            value:
              $ref: '#/components/schemas/ChoiceFilterValue'
          type: object
        - required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.date_range
              enum:
                - resource.date_range
            value:
              $ref: '#/components/schemas/DateRangeFilterValue'
          type: object
        - description: >-
            Filter on a decimal attribute. Supports comparison operators (eq,
            gt, gte, lt, lte, between).
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.decimal
              enum:
                - resource.decimal
            value:
              $ref: '#/components/schemas/DecimalFilterValue'
          type: object
        - description: >-
            Filter on a duration attribute (ISO 8601 duration). Supports
            comparison operators.
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.duration
              enum:
                - resource.duration
            value:
              $ref: '#/components/schemas/DurationFilterValue'
          type: object
        - description: >-
            Filter on an integer attribute. Supports comparison operators (eq,
            gt, gte, lt, lte, between).
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.integer
              enum:
                - resource.integer
            value:
              $ref: '#/components/schemas/IntegerFilterValue'
          type: object
        - description: >-
            Filter on a month/day attribute by an inclusive [start, end]
            interval (year-agnostic).
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.month_day_range
              enum:
                - resource.month_day_range
            value:
              $ref: '#/components/schemas/MonthDayRangeFilterValue'
          type: object
        - description: >-
            Filter using the resolved regrouping (teams, main team, sources,
            date and pattern). Use this when you want to combine team-based
            scoping with a textual filter pattern.
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.regrouping
              enum:
                - resource.regrouping
            value:
              $ref: '#/components/schemas/ResolveRegrouping'
          type: object
        - required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.fulltext
              enum:
                - resource.fulltext
            value:
              $ref: '#/components/schemas/FulltextFilterValue'
          type: object
        - description: >-
            Filter on a text attribute by exact or substring match (depending on
            operator).
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.text
              enum:
                - resource.text
            value:
              $ref: '#/components/schemas/TextFilterValue'
          type: object
        - description: >-
            Restrict resources by team membership and contract period. Use this
            filter to limit the search to currently employed people, or to a
            specific team and date range.
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.team
              enum:
                - resource.team
            value:
              $ref: '#/components/schemas/TeamFilterValue'
          type: object
        - description: >-
            Filter on a time-of-day attribute by an inclusive [start, end]
            interval.
          required:
            - key
            - value
          properties:
            key:
              type: string
              example: resource.time_range
              enum:
                - resource.time_range
            value:
              $ref: '#/components/schemas/TimeRangeFilterValue'
          type: object
        - required:
            - key
            - value
          properties:
            key:
              type: string
              example: or
              enum:
                - or
            value:
              type: array
              items:
                $ref: '#/components/schemas/ListResourcesQueryFilter'
          type: object
        - required:
            - key
            - value
          properties:
            key:
              type: string
              example: and
              enum:
                - and
            value:
              type: array
              items:
                $ref: '#/components/schemas/ListResourcesQueryFilter'
          type: object
    QueryOrderDirection:
      type: string
      example: asc
      enum:
        - asc
        - desc
    Pagination:
      required:
        - limit
        - next_token
      properties:
        limit:
          type:
            - integer
            - 'null'
        next_token:
          type:
            - string
            - 'null'
      type: object
    ResourceView:
      required:
        - id
        - kind_id
        - label
        - short_label
        - sort_label
        - picture
        - attributes
      properties:
        id:
          $ref: '#/components/schemas/Snowflake'
        kind_id:
          $ref: '#/components/schemas/Snowflake'
        label:
          type: string
        short_label:
          type: string
        sort_label:
          type: string
        picture:
          $ref: '#/components/schemas/ResourcePictureView'
        attributes:
          type: object
          additionalProperties: {}
        teams:
          description: Only present if parameter "with_teams" is set to "true".
          type: array
          items:
            $ref: '#/components/schemas/ResourceTeamSummaryView'
        relations:
          description: Only present if parameter "with_relations" is set to "true".
          type: array
          items:
            $ref: '#/components/schemas/ResourceRelationSummaryView'
      type: object
    BooleanFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/BooleanOperator'
        value:
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
          type: boolean
      type: object
    ChoiceFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/ListOperator'
        value:
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
          type: array
          items:
            anyOf:
              - type: integer
              - type: string
      type: object
    DateRangeFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          anyOf:
            - $ref: '#/components/schemas/DateTimeOperator'
            - $ref: '#/components/schemas/IntervalOperator'
        value:
          $ref: '#/components/schemas/LocalDateInterval'
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
      type: object
    DecimalFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/NumericOperator'
        value:
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
          type: string
      type: object
    DurationFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/NumericOperator'
        value:
          $ref: '#/components/schemas/Duration'
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
      type: object
    IntegerFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/NumericOperator'
        value:
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
          type: integer
      type: object
    MonthDayRangeFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/IntervalOperator'
        value:
          $ref: '#/components/schemas/MonthDayInterval'
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
      type: object
    ResolveRegrouping:
      properties:
        teams:
          $ref: '#/components/schemas/TeamList'
        main_team:
          $ref: '#/components/schemas/Snowflake'
        filter_pattern:
          type: string
        operator:
          $ref: '#/components/schemas/ListOperator'
        sources:
          type: array
          items:
            $ref: '#/components/schemas/RegroupingSource'
      type: object
    FulltextFilterValue:
      required:
        - operator
      properties:
        attributes:
          type: array
          items:
            type: string
          default: []
        operator:
          $ref: '#/components/schemas/StringOperator'
        value:
          type: string
          default: ''
          maxLength: 255
      type: object
    TextFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          $ref: '#/components/schemas/StringOperator'
        value:
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
          type: string
      type: object
    TeamFilterValue:
      properties:
        teams:
          oneOf:
            - $ref: '#/components/schemas/TeamList'
            - type: 'null'
        period:
          oneOf:
            - $ref: '#/components/schemas/TeamFilterPeriod'
            - type: 'null'
        recursive:
          type: boolean
          default: false
        head:
          type:
            - boolean
            - 'null'
      type: object
    TimeRangeFilterValue:
      required:
        - attribute
        - operator
      properties:
        attribute:
          type: string
        operator:
          anyOf:
            - $ref: '#/components/schemas/DateTimeOperator'
            - $ref: '#/components/schemas/IntervalOperator'
        value:
          $ref: '#/components/schemas/LocalDateTimeInterval'
          description: >-
            Property can be omitted with 'none' operator. It is required for all
            other operators.
      type: object
    ResourcePictureView:
      required:
        - shape
        - initial
        - url
      properties:
        shape:
          $ref: '#/components/schemas/PictureShape'
        initial:
          type: string
        url:
          type:
            - string
            - 'null'
      type: object
    ResourceTeamSummaryView:
      required:
        - id
        - head
        - name
      properties:
        id:
          $ref: '#/components/schemas/Snowflake'
        head:
          type: boolean
        name:
          type: string
      type: object
    ResourceRelationSummaryView:
      required:
        - relation_type_id
        - related_to_id
        - related_by_ids
      properties:
        relation_type_id:
          $ref: '#/components/schemas/Snowflake'
        related_to_id:
          oneOf:
            - $ref: '#/components/schemas/Snowflake'
            - type: 'null'
        related_by_ids:
          type: array
          items:
            $ref: '#/components/schemas/Snowflake'
      type: object
    BooleanOperator:
      type: string
      example: equals
      enum:
        - equals
        - not_equals
        - none
    ListOperator:
      type: string
      example: in_list
      enum:
        - in_list
        - not_in_list
        - none
    DateTimeOperator:
      type: string
      example: equals
      enum:
        - equals
        - not_equals
        - from
        - until
        - none
    IntervalOperator:
      type: string
      example: in_range
      enum:
        - in_range
        - not_in_range
        - none
    LocalDateInterval:
      type: string
      format: local-date-interval
      example: 2019-11-11/2019-12-12
    NumericOperator:
      type: string
      example: equals
      enum:
        - equals
        - not_equals
        - less_than
        - less_than_or_equal
        - greater_than
        - greater_than_or_equal
        - none
    Duration:
      description: '[ISO 8601 duration](https://en.wikipedia.org/wiki/ISO_8601#Durations)'
      type: string
      format: duration
      example: PT1H30M20S
    MonthDayInterval:
      type: string
      format: local-month-day-interval
      example: '--11-11/--12-12'
    TeamList:
      oneOf:
        - description: Refers to all teams
          type: string
          example: '*'
          enum:
            - '*'
        - description: Refers to a list of teams
          type: array
          items:
            $ref: '#/components/schemas/Snowflake'
          example:
            - '903956503593387633'
            - '903956503593534034'
    RegroupingSource:
      type: string
      example: resource
      enum:
        - resource
        - team
    StringOperator:
      type: string
      example: equals
      enum:
        - equals
        - not_equals
        - contains
        - not_contains
        - starts_with
        - ends_with
        - none
    TeamFilterPeriod:
      required:
        - operator
      properties:
        operator:
          $ref: '#/components/schemas/TeamPeriodOperator'
        date_range:
          oneOf:
            - $ref: '#/components/schemas/LocalDateInterval'
            - type: 'null'
      type: object
    LocalDateTimeInterval:
      type: string
      format: local-date-time-interval
      example: 2019-11-11T12:34:56/2019-12-12T23:59:59
    PictureShape:
      type: string
      example: round
      enum:
        - round
        - rounded-square
        - square
    TeamPeriodOperator:
      type: string
      example: first_starts_in
      enum:
        - first_starts_in
        - starts_in
        - intersects_with
        - ends_in
        - last_ends_in
        - none

````