swagger: '2.0'
info:
  version: ''
  title: resource-service
host: haleconnect.com
schemes:
- https
basePath: /resources
paths:
  /health:
    get:
      tags:
      - Service
      summary: Perform a basic health check on the service
      responses:
        '200':
          description: The service is healthy
          schema:
            type: object
          default:
            description: The service is not healthy
            schema:
              type: object
  /permissions/jobs/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/JobEventIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - JobEvent
      - Permissions
      summary: Get permission information for a JobEvent resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/jobs:
    post:
      tags:
      - JobEvent
      summary: Query resources of type JobEvent
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/JobEventGenericQuery'
      responses:
        '200':
          description: Listing of JobEvent resources
          schema:
            $ref: '#/definitions/JobEventList'
        default:
          $ref: '#/responses/Error'
  /query/jobs/count:
    post:
      tags:
      - JobEvent
      summary: Count resources of type JobEvent by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/JobEventCountQuery'
      responses:
        '200':
          description: Count of queried JobEvent resources
          schema:
            $ref: '#/definitions/JobEventCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - JobEvent
      summary: Count resources of type JobEvent
      responses:
        '200':
          description: Count of JobEvent resources (Count reported may depend on permissions)
          schema:
            $ref: '#/definitions/JobEventCount'
        default:
          $ref: '#/responses/Error'
  /resources/reports/:
    get:
      tags:
      - ValidationReport
      summary: List of resources of type ValidationReport
      responses:
        '200':
          description: Listing of ValidationReport resources
          schema:
            $ref: '#/definitions/ValidationReportList'
        default:
          $ref: '#/responses/Error'
    post:
      tags:
      - ValidationReport
      summary: Create a new resource of type ValidationReport
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/OrganisationContext'
      - $ref: '#/parameters/ValidationReportBody'
      responses:
        '200':
          description: Created ValidationReport resource including the assigned identifier
          schema:
            $ref: '#/definitions/ValidationReport'
        default:
          $ref: '#/responses/Error'
  /resources/reports/{id}:
    get:
      tags:
      - ValidationReport
      summary: Get the resource of type ValidationReport with the specified identifier
      responses:
        '200':
          description: The ValidationReport resource with the given identifier
          schema:
            $ref: '#/definitions/ValidationReport'
        default:
          $ref: '#/responses/Error'
    put:
      tags:
      - ValidationReport
      summary: Update the resource of type ValidationReport with the specified identifier
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/OrganisationContext'
      - $ref: '#/parameters/ValidationReportBody'
      responses:
        '200':
          description: The resource has been successfully updated
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    delete:
      tags:
      - ValidationReport
      summary: Delete the resource of type ValidationReport with the specified identifier
      responses:
        '200':
          description: The resource has been successfully deleted
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    parameters:
    - $ref: '#/parameters/ValidationReportIdentifier'
  /permissions/reports/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/ValidationReportIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - ValidationReport
      - Permissions
      summary: Get permission information for a ValidationReport resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/reports:
    post:
      tags:
      - ValidationReport
      summary: Query resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/ValidationReportGenericQuery'
      responses:
        '200':
          description: Listing of ValidationReport resources
          schema:
            $ref: '#/definitions/ValidationReportList'
        default:
          $ref: '#/responses/Error'
  /query/reports/count:
    post:
      tags:
      - ValidationReport
      summary: Count resources of type ValidationReport by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/ValidationReportCountQuery'
      responses:
        '200':
          description: Count of queried ValidationReport resources
          schema:
            $ref: '#/definitions/ValidationReportCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - ValidationReport
      summary: Count resources of type ValidationReport
      responses:
        '200':
          description: Count of ValidationReport resources (Count reported may depend
            on permissions)
          schema:
            $ref: '#/definitions/ValidationReportCount'
        default:
          $ref: '#/responses/Error'
  /query/reports/delete:
    post:
      tags:
      - ValidationReport
      summary: Bulk delete resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/ValidationReportDeleteQuery'
      responses:
        '200':
          description: Count of deleted ValidationReport resources
          schema:
            $ref: '#/definitions/ValidationReportDeleteResult'
        default:
          $ref: '#/responses/Error'
  /query/reports/download:
    post:
      tags:
      - ValidationReport
      summary: Aggregates resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - name: body
        in: body
        description: The query parameters
        schema:
          required:
          - id
          - download
          properties:
            id:
              type: string
              description: The ID of the report
            download:
              type: integer
              description: The index of the download in the report
          type: object
      responses:
        '200':
          description: Aggregation result
          schema:
            type: object
        default:
          $ref: '#/responses/Error'
  /query/reports/current:
    post:
      tags:
      - ValidationReport
      summary: Aggregates resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - name: body
        in: body
        description: The query parameters
        schema:
          required:
          - dataset
          properties:
            dataset:
              type: string
              description: Data set composed identifier
            category:
              type: string
              description: Category for filtering ('view', 'download', 'data' or 'publish')
          type: object
      responses:
        '200':
          description: Aggregation result
          schema:
            type: object
        default:
          $ref: '#/responses/Error'
  /query/reports/status:
    post:
      tags:
      - ValidationReport
      summary: Aggregates resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - name: body
        in: body
        description: The query parameters
        schema:
          required:
          - dataset
          properties:
            dataset:
              type: string
              description: Data set composed identifier
            category:
              type: string
              description: Category for filtering ('view', 'download' or 'data')
            targetType:
              type: string
              description: Target type for filtering ('service', 'datasetMetadata',
                'data', 'serviceMetadata')
          type: object
      responses:
        '200':
          description: Aggregation result
          schema:
            type: object
        default:
          $ref: '#/responses/Error'
  /query/reports/any:
    post:
      tags:
      - ValidationReport
      summary: Aggregates resources of type ValidationReport
      consumes:
      - application/json
      parameters:
      - name: body
        in: body
        description: The query parameters
        schema:
          required:
          - dataset
          properties:
            dataset:
              type: string
              description: Data set composed identifier
            category:
              type: string
              description: Category for filtering ('view', 'download' or 'data')
          type: object
      responses:
        '200':
          description: Aggregation result
          schema:
            type: object
        default:
          $ref: '#/responses/Error'
  /on/reports/insert/:
    parameters:
    - $ref: '#/parameters/OrganisationContext'
    - $ref: '#/parameters/ValidationReportListBody'
    post:
      tags:
      - ValidationReport
      summary: Insert many ValidationReport resources at once
      responses:
        '200':
          description: The resources were successfully created
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
  /resources/org/settings/{id}:
    get:
      tags:
      - OrganisationSettings
      summary: Get the resource of type OrganisationSettings with the specified identifier
      responses:
        '200':
          description: The OrganisationSettings resource with the given identifier
          schema:
            $ref: '#/definitions/OrganisationSettings'
        default:
          $ref: '#/responses/Error'
    put:
      tags:
      - OrganisationSettings
      summary: Update the resource of type OrganisationSettings with the specified
        identifier
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/OrganisationContext'
      - $ref: '#/parameters/OrganisationSettingsBody'
      responses:
        '200':
          description: The resource has been successfully updated
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    delete:
      tags:
      - OrganisationSettings
      summary: Delete the resource of type OrganisationSettings with the specified
        identifier
      responses:
        '200':
          description: The resource has been successfully deleted
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    parameters:
    - $ref: '#/parameters/OrganisationSettingsIdentifier'
  /permissions/org/settings/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/OrganisationSettingsIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - OrganisationSettings
      - Permissions
      summary: Get permission information for a OrganisationSettings resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /on/org/settings/update/{id}:
    parameters:
    - $ref: '#/parameters/OrganisationSettingsIdentifier'
    - $ref: '#/parameters/OrganisationSettingsBody'
    post:
      tags:
      - OrganisationSettings
      summary: Update a OrganisationSettings resource with the provided properties
      responses:
        '200':
          description: The resource was successfully updated
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
  /permissions/usage/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/CapacityUsageIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - CapacityUsage
      - Permissions
      summary: Get permission information for a CapacityUsage resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/usage:
    post:
      tags:
      - CapacityUsage
      summary: Query resources of type CapacityUsage
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/CapacityUsageGenericQuery'
      responses:
        '200':
          description: Listing of CapacityUsage resources
          schema:
            $ref: '#/definitions/CapacityUsageList'
        default:
          $ref: '#/responses/Error'
  /query/usage/count:
    post:
      tags:
      - CapacityUsage
      summary: Count resources of type CapacityUsage by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/CapacityUsageCountQuery'
      responses:
        '200':
          description: Count of queried CapacityUsage resources
          schema:
            $ref: '#/definitions/CapacityUsageCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - CapacityUsage
      summary: Count resources of type CapacityUsage
      responses:
        '200':
          description: Count of CapacityUsage resources (Count reported may depend
            on permissions)
          schema:
            $ref: '#/definitions/CapacityUsageCount'
        default:
          $ref: '#/responses/Error'
  /permissions/fileMetadata/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/FileMetadataIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - FileMetadata
      - Permissions
      summary: Get permission information for a FileMetadata resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/fileMetadata:
    post:
      tags:
      - FileMetadata
      summary: Query resources of type FileMetadata
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/FileMetadataGenericQuery'
      responses:
        '200':
          description: Listing of FileMetadata resources
          schema:
            $ref: '#/definitions/FileMetadataList'
        default:
          $ref: '#/responses/Error'
  /query/fileMetadata/count:
    post:
      tags:
      - FileMetadata
      summary: Count resources of type FileMetadata by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/FileMetadataCountQuery'
      responses:
        '200':
          description: Count of queried FileMetadata resources
          schema:
            $ref: '#/definitions/FileMetadataCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - FileMetadata
      summary: Count resources of type FileMetadata
      responses:
        '200':
          description: Count of FileMetadata resources (Count reported may depend
            on permissions)
          schema:
            $ref: '#/definitions/FileMetadataCount'
        default:
          $ref: '#/responses/Error'
  /permissions/events/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/ResourceEventIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - ResourceEvent
      - Permissions
      summary: Get permission information for a ResourceEvent resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/events:
    post:
      tags:
      - ResourceEvent
      summary: Query resources of type ResourceEvent
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/ResourceEventGenericQuery'
      responses:
        '200':
          description: Listing of ResourceEvent resources
          schema:
            $ref: '#/definitions/ResourceEventList'
        default:
          $ref: '#/responses/Error'
  /query/events/count:
    post:
      tags:
      - ResourceEvent
      summary: Count resources of type ResourceEvent by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/ResourceEventCountQuery'
      responses:
        '200':
          description: Count of queried ResourceEvent resources
          schema:
            $ref: '#/definitions/ResourceEventCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - ResourceEvent
      summary: Count resources of type ResourceEvent
      responses:
        '200':
          description: Count of ResourceEvent resources (Count reported may depend
            on permissions)
          schema:
            $ref: '#/definitions/ResourceEventCount'
        default:
          $ref: '#/responses/Error'
  /resources/csw/org/:
    get:
      tags:
      - CSWOrgConfig
      summary: List of resources of type CSWOrgConfig
      responses:
        '200':
          description: Listing of CSWOrgConfig resources
          schema:
            $ref: '#/definitions/CSWOrgConfigList'
        default:
          $ref: '#/responses/Error'
  /resources/csw/org/{id}:
    get:
      tags:
      - CSWOrgConfig
      summary: Get the resource of type CSWOrgConfig with the specified identifier
      responses:
        '200':
          description: The CSWOrgConfig resource with the given identifier
          schema:
            $ref: '#/definitions/CSWOrgConfig'
        default:
          $ref: '#/responses/Error'
    put:
      tags:
      - CSWOrgConfig
      summary: Update the resource of type CSWOrgConfig with the specified identifier
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/OrganisationContext'
      - $ref: '#/parameters/CSWOrgConfigBody'
      responses:
        '200':
          description: The resource has been successfully updated
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    delete:
      tags:
      - CSWOrgConfig
      summary: Delete the resource of type CSWOrgConfig with the specified identifier
      responses:
        '200':
          description: The resource has been successfully deleted
          schema:
            $ref: '#/definitions/Feedback'
      default:
        $ref: '#/responses/Error'
    parameters:
    - $ref: '#/parameters/CSWOrgConfigIdentifier'
  /permissions/csw/org/{permission}/{id}:
    parameters:
    - $ref: '#/parameters/CSWOrgConfigIdentifier'
    - $ref: '#/parameters/PermissionName'
    get:
      tags:
      - CSWOrgConfig
      - Permissions
      summary: Get permission information for a CSWOrgConfig resource
      responses:
        '200':
          description: The specified permission is granted for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        '403':
          description: The specified permission is denied for the user on the resource
          schema:
            $ref: '#/definitions/Feedback'
        default:
          $ref: '#/responses/Error'
  /query/csw/org:
    post:
      tags:
      - CSWOrgConfig
      summary: Query resources of type CSWOrgConfig
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/CSWOrgConfigGenericQuery'
      responses:
        '200':
          description: Listing of CSWOrgConfig resources
          schema:
            $ref: '#/definitions/CSWOrgConfigList'
        default:
          $ref: '#/responses/Error'
  /query/csw/org/count:
    post:
      tags:
      - CSWOrgConfig
      summary: Count resources of type CSWOrgConfig by query
      consumes:
      - application/json
      parameters:
      - $ref: '#/parameters/CSWOrgConfigCountQuery'
      responses:
        '200':
          description: Count of queried CSWOrgConfig resources
          schema:
            $ref: '#/definitions/CSWOrgConfigCount'
        default:
          $ref: '#/responses/Error'
    get:
      tags:
      - CSWOrgConfig
      summary: Count resources of type CSWOrgConfig
      responses:
        '200':
          description: Count of CSWOrgConfig resources (Count reported may depend
            on permissions)
          schema:
            $ref: '#/definitions/CSWOrgConfigCount'
        default:
          $ref: '#/responses/Error'
parameters:
  OrganisationContext:
    name: WETF-Context-Organisation
    in: header
    required: false
    description: The organisation context
    schema:
      type: string
  JobEventBody:
    name: body
    in: body
    description: The JobEvent resource content
    schema:
      $ref: '#/definitions/JobEvent'
  JobEventListBody:
    name: body
    in: body
    description: The array of JobEvent resources
    schema:
      $ref: '#/definitions/JobEventList'
  JobEventIdentifier:
    name: id
    in: path
    required: true
    description: The JobEvent resource identifier
    schema:
      type: string
  PermissionName:
    name: permission
    in: path
    required: true
    description: The name of the permission
    schema:
      type: string
  JobEventGenericQuery:
    name: body
    in: body
    description: The query for JobEvent resources using MongoDB syntax. If the body
      contains a property "query" the query is assumed to be embedded in that property,
      otherwise the body is interpreted as query. In case of an embedded query a projection
      can be configured using the property "fields", a sort order using the property
      "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  JobEventCountQuery:
    name: body
    in: body
    description: The query for counting JobEvent resources using MongoDB syntax.
    schema:
      type: object
  ValidationReportBody:
    name: body
    in: body
    description: The ValidationReport resource content
    schema:
      $ref: '#/definitions/ValidationReport'
  ValidationReportListBody:
    name: body
    in: body
    description: The array of ValidationReport resources
    schema:
      $ref: '#/definitions/ValidationReportList'
  ValidationReportIdentifier:
    name: id
    in: path
    required: true
    description: The ValidationReport resource identifier
    schema:
      type: string
  ValidationReportGenericQuery:
    name: body
    in: body
    description: The query for ValidationReport resources using MongoDB syntax. If
      the body contains a property "query" the query is assumed to be embedded in
      that property, otherwise the body is interpreted as query. In case of an embedded
      query a projection can be configured using the property "fields", a sort order
      using the property "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  ValidationReportCountQuery:
    name: body
    in: body
    description: The query for counting ValidationReport resources using MongoDB syntax.
    schema:
      type: object
  ValidationReportDeleteQuery:
    name: body
    in: body
    description: The query for ValidationReport resources to delete using MongoDB
      syntax.
    schema:
      type: object
  OrganisationSettingsBody:
    name: body
    in: body
    description: The OrganisationSettings resource content
    schema:
      $ref: '#/definitions/OrganisationSettings'
  OrganisationSettingsListBody:
    name: body
    in: body
    description: The array of OrganisationSettings resources
    schema:
      $ref: '#/definitions/OrganisationSettingsList'
  OrganisationSettingsIdentifier:
    name: id
    in: path
    required: true
    description: The OrganisationSettings resource identifier
    schema:
      type: string
  CapacityUsageBody:
    name: body
    in: body
    description: The CapacityUsage resource content
    schema:
      $ref: '#/definitions/CapacityUsage'
  CapacityUsageListBody:
    name: body
    in: body
    description: The array of CapacityUsage resources
    schema:
      $ref: '#/definitions/CapacityUsageList'
  CapacityUsageIdentifier:
    name: id
    in: path
    required: true
    description: The CapacityUsage resource identifier
    schema:
      type: string
  CapacityUsageGenericQuery:
    name: body
    in: body
    description: The query for CapacityUsage resources using MongoDB syntax. If the
      body contains a property "query" the query is assumed to be embedded in that
      property, otherwise the body is interpreted as query. In case of an embedded
      query a projection can be configured using the property "fields", a sort order
      using the property "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  CapacityUsageCountQuery:
    name: body
    in: body
    description: The query for counting CapacityUsage resources using MongoDB syntax.
    schema:
      type: object
  FileMetadataBody:
    name: body
    in: body
    description: The FileMetadata resource content
    schema:
      $ref: '#/definitions/FileMetadata'
  FileMetadataListBody:
    name: body
    in: body
    description: The array of FileMetadata resources
    schema:
      $ref: '#/definitions/FileMetadataList'
  FileMetadataIdentifier:
    name: id
    in: path
    required: true
    description: The FileMetadata resource identifier
    schema:
      type: string
  FileMetadataGenericQuery:
    name: body
    in: body
    description: The query for FileMetadata resources using MongoDB syntax. If the
      body contains a property "query" the query is assumed to be embedded in that
      property, otherwise the body is interpreted as query. In case of an embedded
      query a projection can be configured using the property "fields", a sort order
      using the property "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  FileMetadataCountQuery:
    name: body
    in: body
    description: The query for counting FileMetadata resources using MongoDB syntax.
    schema:
      type: object
  ResourceEventBody:
    name: body
    in: body
    description: The ResourceEvent resource content
    schema:
      $ref: '#/definitions/ResourceEvent'
  ResourceEventListBody:
    name: body
    in: body
    description: The array of ResourceEvent resources
    schema:
      $ref: '#/definitions/ResourceEventList'
  ResourceEventIdentifier:
    name: id
    in: path
    required: true
    description: The ResourceEvent resource identifier
    schema:
      type: string
  ResourceEventGenericQuery:
    name: body
    in: body
    description: The query for ResourceEvent resources using MongoDB syntax. If the
      body contains a property "query" the query is assumed to be embedded in that
      property, otherwise the body is interpreted as query. In case of an embedded
      query a projection can be configured using the property "fields", a sort order
      using the property "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  ResourceEventCountQuery:
    name: body
    in: body
    description: The query for counting ResourceEvent resources using MongoDB syntax.
    schema:
      type: object
  CSWOrgConfigBody:
    name: body
    in: body
    description: The CSWOrgConfig resource content
    schema:
      $ref: '#/definitions/CSWOrgConfig'
  CSWOrgConfigListBody:
    name: body
    in: body
    description: The array of CSWOrgConfig resources
    schema:
      $ref: '#/definitions/CSWOrgConfigList'
  CSWOrgConfigIdentifier:
    name: id
    in: path
    required: true
    description: The CSWOrgConfig resource identifier
    schema:
      type: string
  CSWOrgConfigGenericQuery:
    name: body
    in: body
    description: The query for CSWOrgConfig resources using MongoDB syntax. If the
      body contains a property "query" the query is assumed to be embedded in that
      property, otherwise the body is interpreted as query. In case of an embedded
      query a projection can be configured using the property "fields", a sort order
      using the property "sort" and paging using the properties "limit" and "skip".
    schema:
      type: object
  CSWOrgConfigCountQuery:
    name: body
    in: body
    description: The query for counting CSWOrgConfig resources using MongoDB syntax.
    schema:
      type: object
definitions:
  Feedback:
    type: object
    required:
    - code
    - message
    - error
    properties:
      code:
        type: integer
        format: int32
      message:
        type: string
      error:
        type: boolean
  JobEventList:
    description: Array of JobEvent resources
    type: array
    items:
      $ref: '#/definitions/JobEvent'
  JobEvent:
    type: object
  JobEventCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  JobEventDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  ValidationReportList:
    description: Array of ValidationReport resources
    type: array
    items:
      $ref: '#/definitions/ValidationReport'
  ValidationReport:
    type: object
  ValidationReportCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  ValidationReportDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  OrganisationSettingsList:
    description: Array of OrganisationSettings resources
    type: array
    items:
      $ref: '#/definitions/OrganisationSettings'
  OrganisationSettings:
    type: object
  OrganisationSettingsCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  OrganisationSettingsDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  CapacityUsageList:
    description: Array of CapacityUsage resources
    type: array
    items:
      $ref: '#/definitions/CapacityUsage'
  CapacityUsage:
    type: object
  CapacityUsageCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  CapacityUsageDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  FileMetadataList:
    description: Array of FileMetadata resources
    type: array
    items:
      $ref: '#/definitions/FileMetadata'
  FileMetadata:
    type: object
  FileMetadataCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  FileMetadataDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  ResourceEventList:
    description: Array of ResourceEvent resources
    type: array
    items:
      $ref: '#/definitions/ResourceEvent'
  ResourceEvent:
    type: object
  ResourceEventCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  ResourceEventDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
  CSWOrgConfigList:
    description: Array of CSWOrgConfig resources
    type: array
    items:
      $ref: '#/definitions/CSWOrgConfig'
  CSWOrgConfig:
    type: object
  CSWOrgConfigCount:
    type: object
    required:
    - count
    properties:
      count:
        type: integer
        format: int32
  CSWOrgConfigDeleteResult:
    type: object
    required:
    - removed
    properties:
      removed:
        type: integer
        format: int32
responses:
  Error:
    description: Internal error processing request
    schema:
      $ref: '#/definitions/Feedback'
