OpenGov Saved Views API

The saved-views API from OpenGov — 2 operation(s) for saved-views.

OpenAPI Specification

opengov-saved-views-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vendor Management Saved Views API
  description: 'A comprehensive API for managing vendors in the OpenGov platform.


    ## Authentication

    All endpoints require JWT Bearer token authentication. Include the token in the Authorization header:

    ```

    Authorization: Bearer <your-jwt-token>

    ```


    ## Features

    - **Vendor Management**: Create, read, update, and delete vendors

    - **Health Check**: Monitor service health


    ## Rate Limiting

    API calls are subject to rate limiting based on your subscription tier.'
  version: 1.0.0
  contact:
    name: OpenGov API Support
    email: api-support@opengov.com
  license:
    name: Proprietary
    url: https://opengov.com/terms
servers:
- url: https://api.vendor.opengov.com
  description: Production Server
- url: https://api.vendor.ogstaging.us
  description: Staging Server
- url: https://api-vendor.procurement.ogintegration.us
  description: Integration Server
security:
- bearerAuth: []
tags:
- name: saved-views
paths:
  /api/v1/entities/{entityId}/saved-views:
    get:
      tags:
      - saved-views
      operationId: saved-views.listSavedViews
      parameters:
      - name: Authorization
        in: header
        description: JWT Bearer token for authentication
        required: true
        schema:
          type: string
          default: Bearer <your-jwt-token>
        example: Bearer <your-jwt-token>
      - name: entityId
        in: path
        schema:
          type: string
        required: true
      - name: domain
        in: query
        schema:
          type: string
        required: true
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - preconfigured
                - private
                - shared
                properties:
                  preconfigured:
                    type: array
                    items:
                      type: object
                      required:
                      - savedViewId
                      - domain
                      - name
                      - isShared
                      - viewPayload
                      - isPreconfigured
                      - section
                      properties:
                        savedViewId:
                          type: string
                        domain:
                          type: string
                        name:
                          type: string
                          description: a string at most 255 character(s) long
                          title: maxLength(255)
                          pattern: ^\S[\s\S]*\S$|^\S$|^$
                          minLength: 1
                          maxLength: 255
                        isShared:
                          type: boolean
                        viewPayload:
                          type: object
                          required:
                          - columns
                          - search
                          properties:
                            columns:
                              type: array
                              items:
                                type: object
                                required:
                                - name
                                properties:
                                  name:
                                    type: string
                                  visibility:
                                    type: boolean
                                additionalProperties: false
                            search:
                              type: object
                              required:
                              - query
                              - sortBy
                              properties:
                                query:
                                  type: object
                                  required:
                                  - searchString
                                  - columns
                                  properties:
                                    searchString:
                                      type: string
                                    columns:
                                      type: array
                                      items:
                                        type: string
                                  additionalProperties: false
                                conditions:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - operator
                                    properties:
                                      field:
                                        type: string
                                      operator:
                                        type: string
                                        enum:
                                        - eq
                                        - neq
                                        - contains
                                        - notContains
                                        - startsWith
                                        - endsWith
                                        - gt
                                        - gte
                                        - lt
                                        - lte
                                        - between
                                        - in
                                        - notIn
                                        - isNull
                                        - isNotNull
                                        - isEmpty
                                        - isNotEmpty
                                      value:
                                        anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    additionalProperties: false
                                paging:
                                  type: object
                                  required:
                                  - offset
                                  - limit
                                  properties:
                                    offset:
                                      type: number
                                    limit:
                                      type: number
                                  additionalProperties: false
                                sortBy:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - order
                                    properties:
                                      field:
                                        type: string
                                      order:
                                        type: string
                                        enum:
                                        - asc
                                        - desc
                                    additionalProperties: false
                              additionalProperties: false
                          additionalProperties: false
                        isDeleted:
                          anyOf:
                          - type: boolean
                          - type: 'null'
                        deletedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        createdAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        updatedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        isPreconfigured:
                          type: boolean
                        section:
                          type: string
                          enum:
                          - preconfigured
                          - private
                          - shared
                      additionalProperties: false
                  private:
                    type: array
                    items:
                      type: object
                      required:
                      - savedViewId
                      - domain
                      - name
                      - isShared
                      - viewPayload
                      - isPreconfigured
                      - section
                      properties:
                        savedViewId:
                          type: string
                        domain:
                          type: string
                        name:
                          type: string
                          description: a string at most 255 character(s) long
                          title: maxLength(255)
                          pattern: ^\S[\s\S]*\S$|^\S$|^$
                          minLength: 1
                          maxLength: 255
                        isShared:
                          type: boolean
                        viewPayload:
                          type: object
                          required:
                          - columns
                          - search
                          properties:
                            columns:
                              type: array
                              items:
                                type: object
                                required:
                                - name
                                properties:
                                  name:
                                    type: string
                                  visibility:
                                    type: boolean
                                additionalProperties: false
                            search:
                              type: object
                              required:
                              - query
                              - sortBy
                              properties:
                                query:
                                  type: object
                                  required:
                                  - searchString
                                  - columns
                                  properties:
                                    searchString:
                                      type: string
                                    columns:
                                      type: array
                                      items:
                                        type: string
                                  additionalProperties: false
                                conditions:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - operator
                                    properties:
                                      field:
                                        type: string
                                      operator:
                                        type: string
                                        enum:
                                        - eq
                                        - neq
                                        - contains
                                        - notContains
                                        - startsWith
                                        - endsWith
                                        - gt
                                        - gte
                                        - lt
                                        - lte
                                        - between
                                        - in
                                        - notIn
                                        - isNull
                                        - isNotNull
                                        - isEmpty
                                        - isNotEmpty
                                      value:
                                        anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    additionalProperties: false
                                paging:
                                  type: object
                                  required:
                                  - offset
                                  - limit
                                  properties:
                                    offset:
                                      type: number
                                    limit:
                                      type: number
                                  additionalProperties: false
                                sortBy:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - order
                                    properties:
                                      field:
                                        type: string
                                      order:
                                        type: string
                                        enum:
                                        - asc
                                        - desc
                                    additionalProperties: false
                              additionalProperties: false
                          additionalProperties: false
                        isDeleted:
                          anyOf:
                          - type: boolean
                          - type: 'null'
                        deletedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        createdAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        updatedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        isPreconfigured:
                          type: boolean
                        section:
                          type: string
                          enum:
                          - preconfigured
                          - private
                          - shared
                      additionalProperties: false
                  shared:
                    type: array
                    items:
                      type: object
                      required:
                      - savedViewId
                      - domain
                      - name
                      - isShared
                      - viewPayload
                      - isPreconfigured
                      - section
                      properties:
                        savedViewId:
                          type: string
                        domain:
                          type: string
                        name:
                          type: string
                          description: a string at most 255 character(s) long
                          title: maxLength(255)
                          pattern: ^\S[\s\S]*\S$|^\S$|^$
                          minLength: 1
                          maxLength: 255
                        isShared:
                          type: boolean
                        viewPayload:
                          type: object
                          required:
                          - columns
                          - search
                          properties:
                            columns:
                              type: array
                              items:
                                type: object
                                required:
                                - name
                                properties:
                                  name:
                                    type: string
                                  visibility:
                                    type: boolean
                                additionalProperties: false
                            search:
                              type: object
                              required:
                              - query
                              - sortBy
                              properties:
                                query:
                                  type: object
                                  required:
                                  - searchString
                                  - columns
                                  properties:
                                    searchString:
                                      type: string
                                    columns:
                                      type: array
                                      items:
                                        type: string
                                  additionalProperties: false
                                conditions:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - operator
                                    properties:
                                      field:
                                        type: string
                                      operator:
                                        type: string
                                        enum:
                                        - eq
                                        - neq
                                        - contains
                                        - notContains
                                        - startsWith
                                        - endsWith
                                        - gt
                                        - gte
                                        - lt
                                        - lte
                                        - between
                                        - in
                                        - notIn
                                        - isNull
                                        - isNotNull
                                        - isEmpty
                                        - isNotEmpty
                                      value:
                                        anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    additionalProperties: false
                                paging:
                                  type: object
                                  required:
                                  - offset
                                  - limit
                                  properties:
                                    offset:
                                      type: number
                                    limit:
                                      type: number
                                  additionalProperties: false
                                sortBy:
                                  type: array
                                  items:
                                    type: object
                                    required:
                                    - field
                                    - order
                                    properties:
                                      field:
                                        type: string
                                      order:
                                        type: string
                                        enum:
                                        - asc
                                        - desc
                                    additionalProperties: false
                              additionalProperties: false
                          additionalProperties: false
                        isDeleted:
                          anyOf:
                          - type: boolean
                          - type: 'null'
                        deletedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        createdAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        updatedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        isPreconfigured:
                          type: boolean
                        section:
                          type: string
                          enum:
                          - preconfigured
                          - private
                          - shared
                      additionalProperties: false
                additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/HttpApiDecodeError'
                - $ref: '#/components/schemas/BadRequestHttpError'
        '401':
          description: AuthError
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/AuthError'
                - $ref: '#/components/schemas/UnauthenticatedHttpError'
        '403':
          description: UnauthorizedHttpError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedHttpError'
        '404':
          description: EntityNotFoundError
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/EntityNotFoundError'
                - $ref: '#/components/schemas/NotFoundHttpError'
        '500':
          description: InfrastructureError
          content:
            application/json:
              schema:
                anyOf:
                - type: object
                  required:
                  - message
                  - _tag
                  properties:
                    message:
                      type: string
                    cause:
                      not: {}
                      title: never
                    _tag:
                      type: string
                      enum:
                      - InfrastructureError
                  additionalProperties: false
                - $ref: '#/components/schemas/InternalServerHttpError'
    post:
      tags:
      - saved-views
      operationId: saved-views.createSavedView
      parameters:
      - name: Authorization
        in: header
        description: JWT Bearer token for authentication
        required: true
        schema:
          type: string
          default: Bearer <your-jwt-token>
        example: Bearer <your-jwt-token>
      - name: entityId
        in: path
        schema:
          type: string
        required: true
      security:
      - bearerAuth: []
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - savedViewId
                - domain
                - name
                - isShared
                - viewPayload
                - isPreconfigured
                properties:
                  savedViewId:
                    type: string
                  domain:
                    type: string
                  name:
                    type: string
                    description: a string at most 255 character(s) long
                    title: maxLength(255)
                    pattern: ^\S[\s\S]*\S$|^\S$|^$
                    minLength: 1
                    maxLength: 255
                  isShared:
                    type: boolean
                  viewPayload:
                    type: object
                    required:
                    - columns
                    - search
                    properties:
                      columns:
                        type: array
                        items:
                          type: object
                          required:
                          - name
                          properties:
                            name:
                              type: string
                            visibility:
                              type: boolean
                          additionalProperties: false
                      search:
                        type: object
                        required:
                        - query
                        - sortBy
                        properties:
                          query:
                            type: object
                            required:
                            - searchString
                            - columns
                            properties:
                              searchString:
                                type: string
                              columns:
                                type: array
                                items:
                                  type: string
                            additionalProperties: false
                          conditions:
                            type: array
                            items:
                              type: object
                              required:
                              - field
                              - operator
                              properties:
                                field:
                                  type: string
                                operator:
                                  type: string
                                  enum:
                                  - eq
                                  - neq
                                  - contains
                                  - notContains
                                  - startsWith
                                  - endsWith
                                  - gt
                                  - gte
                                  - lt
                                  - lte
                                  - between
                                  - in
                                  - notIn
                                  - isNull
                                  - isNotNull
                                  - isEmpty
                                  - isNotEmpty
                                value:
                                  anyOf:
                                  - type: string
                                  - type: array
                                    items:
                                      type: string
                              additionalProperties: false
                          paging:
                            type: object
                            required:
                            - offset
                            - limit
                            properties:
                              offset:
                                type: number
                              limit:
                                type: number
                            additionalProperties: false
                          sortBy:
                            type: array
                            items:
                              type: object
                              required:
                              - field
                              - order
                              properties:
                                field:
                                  type: string
                                order:
                                  type: string
                                  enum:
                                  - asc
                                  - desc
                              additionalProperties: false
                        additionalProperties: false
                    additionalProperties: false
                  isDeleted:
                    anyOf:
                    - type: boolean
                    - type: 'null'
                  deletedAt:
                    anyOf:
                    - type: string
                      format: date-time
                    - type: 'null'
                  createdAt:
                    anyOf:
                    - type: string
                      format: date-time
                    - type: 'null'
                  updatedAt:
                    anyOf:
                    - type: string
                      format: date-time
                    - type: 'null'
                  isPreconfigured:
                    type: boolean
                additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/HttpApiDecodeError'
                - $ref: '#/components/schemas/BadRequestHttpError'
        '401':
          description: AuthError
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/AuthError'
                - $ref: '#/components/schemas/UnauthenticatedHttpError'
        '403':
          description: UnauthorizedHttpError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedHttpError'
        '404':
          description: EntityNotFoundError
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/EntityNotFoundError'
                - $ref: '#/components/schemas/NotFoundHttpError'
        '500':
          description: InfrastructureError
          content:
            application/json:
              schema:
                anyOf:
                - type: object
                  required:
                  - message
                  - _tag
                  properties:
                    message:
                      type: string
                    cause:
                      not: {}
                      title: never
                    _tag:
                      type: string
                      enum:
                      - InfrastructureError
                  additionalProperties: false
                - $ref: '#/components/schemas/InternalServerHttpError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SavedViewModel.jsonCreate'
        required: true
  /api/v1/entities/{entityId}/saved-views/{savedViewId}:
    patch:
      tags:
      - saved-views
      operationId: saved-views.updateSav

# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/opengov/refs/heads/main/openapi/opengov-saved-views-api-openapi.yml