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

# Get filterable attributes for Eois

> Returns metadata about available filter attributes, operators, and usage examples.



## OpenAPI

````yaml /api-reference/v4/openapi.json get /eois/help
openapi: 3.1.0
info:
  title: API V4
  version: '4'
  description: >-
    OAuth 2.0 secured API. Obtain an access token using client credentials to
    access protected endpoints. The regional endpoints listed below serve every
    Zivio organisation, so each request — including the token request — must
    carry a `zivio-tenant-id` header identifying yours. Requests without it are
    rejected with a 404 before any token is checked.
  contact:
    name: API Support
    email: support@zivio.com
servers:
  - url: https://api.zivio.net/api/v4
    description: Global API Router
  - url: https://api.eu.zivio.net/api/v4
    description: EU Data Region
  - url: https://api.uk.zivio.net/api/v4
    description: UK Data Region
  - url: https://api.us.zivio.net/api/v4
    description: US Data Region
security:
  - oauth2: []
    tenantId: []
paths:
  /eois/help:
    get:
      tags:
        - Eois
      summary: Get filterable attributes for Eois
      description: >-
        Returns metadata about available filter attributes, operators, and usage
        examples.
      operationId: getEoisHelp
      responses:
        '200':
          description: Filter help documentation
          content:
            application/json:
              schema:
                type: object
                properties:
                  model:
                    type: string
                  endpoint:
                    type: string
                  attributes:
                    type: object
                    additionalProperties:
                      type: object
                      properties:
                        type:
                          type: string
                        operators:
                          type: array
                          items:
                            type: string
                        example:
                          type: string
                  operators:
                    $ref: '#/components/schemas/FilterOperators'
                  custom_fields:
                    type: object
                    properties:
                      description:
                        type: string
                      operators:
                        $ref: '#/components/schemas/CustomFieldOperators'
                      examples:
                        type: object
                        additionalProperties:
                          type: string
              example:
                model: Eoi
                endpoint: api/v4/eois
                attributes:
                  id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[id]=123
                  created_at:
                    type: datetime
                    operators:
                      - eq
                      - not_eq
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[created_at][gte]=2024-01-01T00:00:00Z
                  updated_at:
                    type: datetime
                    operators:
                      - eq
                      - not_eq
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[updated_at][gte]=2024-01-01T00:00:00Z
                  title:
                    type: string
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - like
                      - not_like
                    example: filter[title][like]=search_term
                  description:
                    type: string
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - like
                      - not_like
                    example: filter[description][like]=search_term
                  status:
                    type: string
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                    example: filter[status]=in_progress
                  submission_deadline:
                    type: datetime
                    operators:
                      - eq
                      - not_eq
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[submission_deadline][gte]=2024-01-01T00:00:00Z
                  time_zone:
                    type: string
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - like
                      - not_like
                    example: filter[time_zone][like]=search_term
                  submission_deadline_visibility:
                    type: boolean
                    operators:
                      - eq
                      - not_eq
                    example: filter[submission_deadline_visibility]=true
                  skill_category_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[skill_category_id]=123
                  skill_subcategory_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[skill_subcategory_id]=123
                  skill_category_tier3_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[skill_category_tier3_id]=123
                  owner_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[owner_id]=123
                  approver_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[approver_id]=123
                  client_org_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[client_org_id]=123
                  ended_at:
                    type: datetime
                    operators:
                      - eq
                      - not_eq
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[ended_at][gte]=2024-01-01T00:00:00Z
                  cancellation_reason:
                    type: string
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - like
                      - not_like
                    example: filter[cancellation_reason][like]=search_term
                  cancelled_by_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[cancelled_by_id]=123
                  cancelled_at:
                    type: datetime
                    operators:
                      - eq
                      - not_eq
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[cancelled_at][gte]=2024-01-01T00:00:00Z
                  eoi_matches_count:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[eoi_matches_count][gte]=10
                  project_id:
                    type: integer
                    operators:
                      - eq
                      - not_eq
                      - in
                      - not_in
                      - gt
                      - gte
                      - lt
                      - lte
                      - between
                    example: filter[project_id]=123
                operators:
                  eq:
                    description: Equal to (default when no operator specified)
                    usage: filter[<attribute>]=value
                  not_eq:
                    description: Not equal to
                    usage: filter[<attribute>][not_eq]=value
                  gt:
                    description: Greater than
                    usage: filter[<attribute>][gt]=value
                  gte:
                    description: Greater than or equal to
                    usage: filter[<attribute>][gte]=value
                  lt:
                    description: Less than
                    usage: filter[<attribute>][lt]=value
                  lte:
                    description: Less than or equal to
                    usage: filter[<attribute>][lte]=value
                  between:
                    description: Between two values (inclusive)
                    usage: filter[<attribute>][between]=min,max
                  in:
                    description: >-
                      Matches any of the provided values (implicit when value
                      contains comma)
                    usage: filter[<attribute>]=val1,val2,val3
                  not_in:
                    description: Does not match any of the provided values
                    usage: filter[<attribute>][not_in]=val1,val2,val3
                  like:
                    description: Contains text (case-insensitive)
                    usage: filter[<attribute>][like]=text
                  not_like:
                    description: Does not contain text
                    usage: filter[<attribute>][not_like]=text
                sorting:
                  description: Sort results by an attribute
                  usage: sort[<attribute>]=asc or sort[<attribute>]=desc
                  default: asc
        '401':
          description: >-
            Unauthorized - the access token is missing, expired, revoked or
            malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: invalid_token
                error_description: >-
                  The access token provided is expired, revoked, malformed, or
                  invalid for other reasons
        '403':
          description: Forbidden - insufficient scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: insufficient_scope
                error_description: >-
                  The request requires higher privileges than provided by the
                  access token
                required_scope: eois:read
                provided_scopes:
                  - welcome:read
      security:
        - oauth2:
            - eois:read
          tenantId: []
components:
  schemas:
    FilterOperators:
      type: object
      description: Available filter operators and their usage
      properties:
        eq:
          type: object
          properties:
            description:
              type: string
              example: Equal to (default when no operator specified)
            usage:
              type: string
              example: filter[<attribute>]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - string
                - boolean
                - datetime
                - date
                - decimal
        not_eq:
          type: object
          properties:
            description:
              type: string
              example: Not equal to
            usage:
              type: string
              example: filter[<attribute>][not_eq]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - string
                - boolean
                - datetime
                - date
                - decimal
        gt:
          type: object
          properties:
            description:
              type: string
              example: Greater than
            usage:
              type: string
              example: filter[<attribute>][gt]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - datetime
                - date
                - decimal
        gte:
          type: object
          properties:
            description:
              type: string
              example: Greater than or equal to
            usage:
              type: string
              example: filter[<attribute>][gte]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - datetime
                - date
                - decimal
        lt:
          type: object
          properties:
            description:
              type: string
              example: Less than
            usage:
              type: string
              example: filter[<attribute>][lt]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - datetime
                - date
                - decimal
        lte:
          type: object
          properties:
            description:
              type: string
              example: Less than or equal to
            usage:
              type: string
              example: filter[<attribute>][lte]=value
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - datetime
                - date
                - decimal
        between:
          type: object
          properties:
            description:
              type: string
              example: Between two values (inclusive)
            usage:
              type: string
              example: filter[<attribute>][between]=min,max
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - datetime
                - date
                - decimal
        in:
          type: object
          properties:
            description:
              type: string
              example: >-
                Matches any of the provided values (implicit when value contains
                comma)
            usage:
              type: string
              example: filter[<attribute>]=val1,val2,val3
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - string
        not_in:
          type: object
          properties:
            description:
              type: string
              example: Does not match any of the provided values
            usage:
              type: string
              example: filter[<attribute>][not_in]=val1,val2,val3
            types:
              type: array
              items:
                type: string
              example:
                - integer
                - string
        like:
          type: object
          properties:
            description:
              type: string
              example: Contains text (case-insensitive)
            usage:
              type: string
              example: filter[<attribute>][like]=text
            types:
              type: array
              items:
                type: string
              example:
                - string
        not_like:
          type: object
          properties:
            description:
              type: string
              example: Does not contain text (case-insensitive)
            usage:
              type: string
              example: filter[<attribute>][not_like]=text
            types:
              type: array
              items:
                type: string
              example:
                - string
    CustomFieldOperators:
      type: object
      description: Available custom field filter operators
      properties:
        eq:
          type: object
          properties:
            description:
              type: string
              example: Exact match (default)
            usage:
              type: string
              example: cf[key]=value
        not_eq:
          type: object
          properties:
            description:
              type: string
              example: Not equal to
            usage:
              type: string
              example: cf[key][not_eq]=value
        in:
          type: object
          properties:
            description:
              type: string
              example: Matches any of the provided values
            usage:
              type: string
              example: cf[key][in]=val1,val2,val3
        not_in:
          type: object
          properties:
            description:
              type: string
              example: Does not match any of the provided values
            usage:
              type: string
              example: cf[key][not_in]=val1,val2,val3
        contains:
          type: object
          properties:
            description:
              type: string
              example: Contains text (case-insensitive)
            usage:
              type: string
              example: cf[key][contains]=text
        not_contains:
          type: object
          properties:
            description:
              type: string
              example: Does not contain text (case-insensitive)
            usage:
              type: string
              example: cf[key][not_contains]=text
        exists:
          type: object
          properties:
            description:
              type: string
              example: Has the key (any value)
            usage:
              type: string
              example: cf[key][exists]=
        not_exists:
          type: object
          properties:
            description:
              type: string
              example: Does not have the key
            usage:
              type: string
              example: cf[key][not_exists]=
    Error:
      type: object
      description: Error envelope returned by every non-2xx V4 response
      properties:
        error:
          type: string
          example: insufficient_scope
        error_description:
          type: string
        message:
          type: string
        details:
          type: object
          additionalProperties: true
        required_scope:
          type: string
          example: projects:read
        provided_scopes:
          type: array
          items:
            type: string
  securitySchemes:
    oauth2:
      type: oauth2
      description: >-
        OAuth 2.0 client credentials. The access token from POST /oauth/token is
        sent as a bearer token. Request only the scopes you need.
      flows:
        clientCredentials:
          tokenUrl: https://api.zivio.net/api/v4/oauth/token
          scopes:
            bank_accounts:read: Read bank account details on suppliers and the org.
            catalogs:read: Read catalog items.
            cost_centers:read: Read cost center records.
            eoi_responses:read: Read responses to expressions of interest.
            eois:read: Read expressions of interest.
            offers:read: Read offers for projects.
            org_units:read: Read your organization unit hierarchy.
            org_users:read: Read members of your organization.
            resources:read: Read resource (worker) records.
            sales_invoices:read: Read invoices issued to clients.
            sales_milestones:read: Read milestones on sales engagements.
            skill_categories:read: Read the skill category taxonomy.
            skill_taxonomies:read: Read skill taxonomy structure.
            skills:read: Read individual skills.
            supplier_documents:read: Read documents uploaded by suppliers.
            supplier_lists:read: Read curated lists of suppliers.
            supplier_users:read: Read users belonging to supplier organizations.
            tax_types:read: Read configured tax types.
            users:read: Read user profiles.
            variation_orders:read: Read variation orders on projects.
            welcome:read: 'Required: confirms your identity to the application.'
            bid_evaluations:read: >-
              Read evaluation scorecards for bids, including criterion scores
              and quality, cost and total scores.
            bid_evaluations:write: >-
              Score bids against a project's quality criteria and override
              calculated cost scores.
            bids:read: Read bids submitted on projects.
            bids:write: >-
              Shortlist, select, eliminate and reinstate bids submitted on
              projects.
            invoices:read: Read invoices on projects.
            invoices:write: Create and update invoices.
            notes:read: Read notes on projects and EOIs.
            notes:write: Create and update notes on projects and EOIs.
            project_approvals:read: Read project approval workflows.
            project_approvals:write: Create and update project approval workflows.
            project_conversations:read: Read messages exchanged with suppliers on a project.
            project_conversations:write: Send messages to suppliers on a project.
            project_invitations:read: Read supplier invitations on projects.
            project_invitations:write: Invite suppliers to bid on projects.
            project_questions:read: Read supplier clarification questions on projects.
            project_questions:write: Answer and approve supplier clarification questions.
            projects:read: Read projects.
            projects:write: Create and update projects.
            milestones:read: Read milestones on projects.
            milestones:write: Create and update milestones.
            orgs:read: Read organization records.
            orgs:write: Create and update organization records.
            purchase_orders:read: Read purchase orders.
            purchase_orders:write: Create and update purchase orders.
            reviews:read: Read reviews left on suppliers.
            reviews:write: Create and update reviews.
            suppliers:read: Read supplier profiles.
            suppliers:write: Create and update supplier profiles.
            raw_scorecard_entries:write: Create and update raw scorecard entries.
            raw_scorecard_entries:read: Read raw scorecard entries.
            tasks:read: >-
              Read the acting user's task queue, including outstanding approvals
              and items to review.
            tasks:write: Complete and dismiss tasks in the acting user's task queue.
            act_as_user: >-
              Make requests as another user within the token holder's delegation
              boundary.
    tenantId:
      type: apiKey
      name: zivio-tenant-id
      in: header
      description: >-
        Your Zivio organisation identifier. The regional API endpoints serve
        every Zivio organisation, so each request must identify yours.

````