openapi: 3.0.3
info:
  title: Meltwater API
  description: The Meltwater Public API
  contact:
    name: Meltwater Support
    url: https://developer.meltwater.com/
    email: support@api.meltwater.com
  version: '1.0'
servers:
  - url: https://api.meltwater.com
security:
  - apikey: [ ]
tags:
  - name: Listening Streaming
    description: Streaming of Meltwater data to integrate with your internal systems and workflows.
    parent: Listening
  - name: Listening Analytics
    description: Analyse multiple types of Meltwater data, run volume time series, top tags and sentiment counts.
    parent: Listening
  - name: Listening Exports
    description: Data exports for onetime and recurring jobs.
    parent: Listening
  - name: Listening Search
    description: Search Meltwater data using saved searches to integrate with your own API connectors and internal systems.
    parent: Listening
  - name: Listening Search Management
    description: Manage Saved Searches
    parent: Listening
  - name: Account Management
    description: Account Management API and Usage APIs
  - name: Owned Analytics
    description: Retrieve owned social metrics and analytics.
  - name: Explore+ Assets
    description: Manage your Explore+ assets including searches and custom fields.
    parent: Explore+
  - name: Explore+ Analytics
    description: Fetch analytics on data within your private index.
    parent: Explore+
  - name: Explore+ Search
    description: Export earned documents from your private index.
    parent: Explore+
  - name: Bring Your Own Content (BYOC)
    description: Upload your own content into the Meltwater Platform.
  - name: Mira API
    description: AI-powered chat completion and project listing features.
x-tagGroups:
  - name: Listening
    tags:
      - Listening Exports
      - Listening Search
      - Listening Analytics
      - Listening Streaming
      - Listening Search Management
  - name: Explore+
    tags:
      - Explore+ Search
      - Explore+ Analytics
      - Explore+ Assets
  - name: Social Analytics
    tags:
      - Owned Analytics
  - name: Mira API
    tags:
      - Mira API
  - name: Account
    tags:
      - Account Management
  - name: Bring Your Own Content
    tags:
      - Bring Your Own Content (BYOC)
paths:
  /v3/searches:
    get:
      tags:
        - Listening Search Management
      summary: Get a list of all your searches
      operationId: list_searches
      parameters:
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
        - name: query_type
          in: query
          description: Only return searches of the specified query type, if omitted
            searches of all query types will be returned
          required: false
          schema:
            type: string
            enum:
              - boolean
              - keyword
              - combined
        - name: expand_combined
          in: query
          description: For combined searches, show whether the ids belongs to a search, filter set or custom category
          required: false
          schema:
            type: boolean
      responses:
        '200':
          description: List of Searches
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchListResponse'
              examples:
                Search List:
                  summary: Search listing
                  value:
                    searches:
                      - updated: '2020-08-23T08:25:56Z'
                        id: 1025
                        name: Electric Cars
                      - updated: '2020-08-23T08:25:56Z'
                        id: 1027
                        name: Pokemon
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
    post:
      tags:
        - Listening Search Management
      summary: Create a search
      operationId: create_search
      parameters:
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
      requestBody:
        description: A single search request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SingleSearchRequest'
            examples:
              Boolean Search:
                summary: Boolean Search
                value:
                  search:
                    name: Boolean Search
                    query:
                      filter_set:
                        id: 123
                        type: saved
                      case_sensitivity: 'yes'
                      boolean: Tesla OR (Volvo NEAR electric)
                      type: boolean
              Keyword Search:
                summary: Keyword Search
                value:
                  search:
                    name: Keyword Search
                    query:
                      filter_set:
                        id: 123
                        type: saved
                      case_sensitivity: hybrid
                      not_keywords:
                        - Vodka
                      any_keywords:
                        - Tesla
                        - Volvo
                      all_keywords:
                        - Car
                      type: keyword
              Combined Search:
                summary: Combined Search
                value:
                  search:
                    name: Combined Search
                    query:
                      filter_set:
                        id: 123
                        type: saved
                      not_searches:
                        - 1
                      any_searches:
                        - 2
                      all_searches:
                        - 3
                      type: combined
        required: true
      responses:
        '201':
          description: A single Search
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SingleSearch'
              examples:
                Boolean Search:
                  summary: Boolean Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1025
                      name: Electric Cars
                      query:
                        filter_set: null
                        case_sensitivity: no
                        boolean: "cars AND electric"
                Keyword Search:
                  summary: Keyword Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1026
                      name: Pokemon
                      query:
                        filter_set:
                          id: 123456
                          name: my filter set
                          subtype: custom
                          type: saved
                        case_sensitivity: 'no'
                        not_keywords: [ ]
                        any_keywords:
                          - Pokemon
                          - Pokémon
                        all_keywords: [ ]
                        type: keyword
                Combined Search:
                  summary: Combined Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56.000Z'
                      id: 1028
                      name: Meltwater Combined
                      query:
                        filter_set: null
                        case_sensitivity: no
                        not_searches: [ ]
                        any_searches: [ ]
                        all_searches:
                          - 1
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
  /v3/searches/{id}:
    get:
      tags:
        - Listening Search Management
      summary: Get an individual search
      operationId: get_search
      parameters:
        - name: id
          in: path
          description: Search id
          required: true
          schema:
            type: integer
            format: int64
          example: 1234
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
        - name: expand_combined
          in: query
          description: For combined searches, show whether the ids belongs to a search, filter set or custom category
          required: false
          schema:
            type: boolean
      responses:
        '200':
          description: A single Search
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SingleSearch'
              examples:
                Boolean Search:
                  summary: Boolean Search with a Query
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1024
                      name: Electric Cars
                      query:
                        filter_set: null
                        case_sensitivity: 'no'
                        boolean: Tesla OR (Volvo NEAR electric)
                        type: boolean
                Boolean Search with hidden Query:
                  summary: Boolean Search with hidden Query
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1025
                      name: Electric Cars
                Keyword Search:
                  summary: Keyword Search with a Query
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1026
                      name: Pokemon
                      query:
                        filter_set:
                          id: 123456
                          name: my filter set
                          subtype: custom
                          type: saved
                        case_sensitivity: 'no'
                        not_keywords: [ ]
                        any_keywords:
                          - Pokemon
                          - Pokémon
                        all_keywords: [ ]
                        type: keyword
                Keyword Search No Query:
                  summary: Keyword Search with hidden Query
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1027
                      name: Pokemon
                Combined Search:
                  summary: Combined Search with a Query
                  value:
                    search:
                      updated: '2020-08-23T08:25:56.000Z'
                      id: 1028
                      name: Meltwater Combined
                      query:
                        filter_set: null
                        case_sensitivity: no
                        not_searches: [ ]
                        any_searches: [ ]
                        all_searches:
                          - 1
                Combined Search No Query:
                  summary: Combined Search with hidden Query
                  value:
                    search:
                      updated: '2020-03-25T00:00:00Z'
                      id: 1028
                      name: Meltwater Combined
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
    put:
      tags:
        - Listening Search Management
      summary: Update an individual search
      operationId: update_search
      parameters:
        - name: id
          in: path
          description: Search id
          required: true
          schema:
            type: integer
            format: int64
          example: 1234
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
      requestBody:
        description: A single search request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SingleSearchRequest'
            examples:
              Keyword Search:
                summary: Keyword Search
                value:
                  search:
                    name: Keyword Search
                    query:
                      filter_set: null
                      case_sensitivity: no
                      not_keywords:
                        - Tesla
                      any_keywords:
                        - Twitter
                      all_keywords:
                        - Musk
                      type: keyword
              Boolean Search:
                summary: Boolean Search
                value:
                  search:
                    name: Boolean Search
                    query:
                      filter_set:
                        id: 123456
                        name: my filter set
                        subtype: custom
                        type: saved
                      case_sensitivity: 'yes'
                      boolean: Tesla OR (Volvo NEAR electric)
                      type: boolean
              Combined Search:
                summary: Combined Search
                value:
                  search:
                    name: Combined Search
                    query:
                      filter_set:
                        id: 123
                        type: saved
                      not_searches:
                        - 1
                      any_searches:
                        - 2
                      all_searches:
                        - 3
                      type: combined
        required: true
      responses:
        '200':
          description: A single Search
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SingleSearch'
              examples:
                Boolean Search:
                  summary: Boolean Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1025
                      name: Electric Cars
                      query:
                        filter_set: null
                        case_sensitivity: no
                        boolean: "cars AND electric"
                Keyword Search:
                  summary: Keyword Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56Z'
                      id: 1026
                      name: Pokemon
                      query:
                        filter_set:
                          id: 123456
                          name: my filter set
                          subtype: custom
                          type: saved
                        case_sensitivity: 'no'
                        not_keywords: [ ]
                        any_keywords:
                          - Pokemon
                          - Pokémon
                        all_keywords: [ ]
                        type: keyword
                Combined Search:
                  summary: Combined Search
                  value:
                    search:
                      updated: '2020-08-23T08:25:56.000Z'
                      id: 1028
                      name: Meltwater Combined
                      query:
                        filter_set: null
                        case_sensitivity: no
                        not_searches: [ ]
                        any_searches: [ ]
                        all_searches:
                          - 1
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
    delete:
      tags:
        - Listening Search Management
      summary: Delete an individual search
      operationId: delete_search
      parameters:
        - name: id
          in: path
          description: Search id
          required: true
          schema:
            type: integer
            format: int64
          example: 1234
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
      responses:
        '204':
          description: ''
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/MissingResourceResponse'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/InvalidPermissionsResponse'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/UnprocessableEntityCompanyId'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/InternalServerErrorResponse'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
            '*/*':
              schema:
                $ref: '#/components/schemas/ServiceUnavailable'
      security:
        - apikey: [ ]
      description: ''
  /v3/accounts/me/companies:
    get:
      tags:
        - Account Management
      summary: Get a list of all your companies
      operationId: list_companies
      responses:
        '200':
          description: List of Companies
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompanyList'
              example:
                companies:
                  - name: Meltwater
                    id: 61d07a1eb6b501051b5af3d7
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
  /v3/accounts/me/workspaces:
    get:
      tags:
        - Account Management
      summary: Get a list of all your workspaces
      operationId: list_workspaces
      responses:
        '200':
          description: List of Workspaces
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceList'
              example:
                count: 0
                workspaces:
                  - id: 61d07a1eb6b501051b5af3d7
                    name: My Workspace
                    description: My awesome workspace
                    created_at: "2023-09-19T14:54:38Z"
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
  /v3/accounts/me/tokens:
    get:
      tags:
        - Account Management
      summary: Get a list of all your API tokens
      operationId: list_tokens
      responses:
        '200':
          description: List of Tokens
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenList'
              example:
                count: 2
                tokens:
                  - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    label: My API Token
                    created_at: "2024-01-15T10:30:00Z"
                    created_by: Alex Morgan
                  - id: f7e6d5c4-b3a2-1098-fedc-ba9876543210
                    label: Token for New Project
                    created_at: "2024-02-20T14:45:00Z"
                    created_by: Sam Taylor
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
  /v3/searches/{id}/count:
    get:
      tags:
        - Listening Search Management
      summary: Get an approximate count of results for the search over a particular
        period
      operationId: search_count
      parameters:
        - name: id
          in: path
          description: Search id
          required: true
          schema:
            type: integer
            format: int64
          example: 1234
        - name: company_id
          in: query
          description: Company which owns the given search. If not specified your default
            company is used.
          required: false
          schema:
            type: string
        - name: start_date
          in: query
          description: 'The start date of the search to count result for. Default: `two
          weeks ago` in ISO8601 format.'
          required: false
          schema:
            type: string
            format: date-time
        - name: end_date
          in: query
          description: 'The end date of the search to count result for. Default: `now`
          in ISO8601 format.'
          required: false
          schema:
            type: string
            format: date-time
      responses:
        '200':
          description: Search Count
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchCountResponse'
              example:
                count:
                  total: 901382
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
  /v3/tags:
    get:
      tags:
        - Listening Search Management
      summary: Get a list of all your tags
      operationId: list_tags
      parameters:
        - name: company_id
          in: query
          description: Company which owns the given tags. If not specified your default
            company is used.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: List of Tags
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagList'
              example:
                tags:
                  - id: 123456
                    name: my tag
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
      description: ''
    post:
      tags:
        - Listening Search Management
      summary: Create a new tag
      description: Create a new tag for tagging documents. Tag names must be unique
        and a maximum of 128 characters.
      parameters:
        - name: company_id
          in: query
          description: Company which will own the new tag. If not specified, your default company is used.
          schema:
            type: string
      requestBody:
        description: Tag
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTagRequest'
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateTagResponse'
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
  /v3/tags/{tag_id}:
    delete:
      tags:
        - Listening Search Management
      summary: Delete an existing tag.
      description: Deletes a given tag. Any documents that possess this tag will have
        it removed following tag deletion.
      parameters:
        - name: tag_id
          in: path
          description: Tag ID
          required: true
          schema:
            type: integer
        - name: company_id
          in: query
          description: Company which owns the tag to be deleted. If not specified, your default company is used.
          schema:
            type: string
      responses:
        "204":
          description: No Content
          content: { }
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/documents/add_tags:
    post:
      tags:
        - Listening Search Management
      summary: Add tags to documents
      operationId: add_tags
      description: Triggers a request to add a list of specified tags to a given set of documents. This is an asynchronous operation.
      parameters:
        - name: company_id
          in: query
          description: Set the company where the change will be applied
          schema:
            type: string
      requestBody:
        required: true
        description: 'This body must contain two fields: `document_ids`, an array of strings representing the IDs of the documents from which tags should be added, and `tags`, an array of objects where each object has an id (integer) or name (string) representing the tags to be added. Each document in `document_ids` will have the specified `tags` added.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentTagsPayload'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MWAPIError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MWAPIError'
      security:
        - JWT: []
  /v3/documents/remove_tags:
    post:
      tags:
        - Listening Search Management
      summary: Remove tags from documents
      operationId: remove_tags
      description: Triggers a request to remove a list of specified tags from a given set of documents. This is an asynchronous operation.
      parameters:
        - name: company_id
          in: query
          description: Set the company where the change will be applied
          schema:
            type: string
      requestBody:
        required: true
        description: 'This body must contain two fields: `document_ids`, an array of strings representing the IDs of the documents from which tags should be removed, and `tags`, an array of objects where each object has an id (integer) or name (string) representing the tags to be removed. Each document in `document_ids` will have the specified `tags` removed.'
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentTagsPayload'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MWAPIError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MWAPIError'
      security:
        - JWT: []
  /v3/filter_sets:
    get:
      tags:
        - Listening Search Management
      summary: Get a list of all search filter sets
      operationId: list_filter_sets
      parameters:
        - name: company_id
          in: query
          description: Company which owns the given filter sets. If not specified your
            default company is used.
          required: false
          schema:
            type: string
        - name: include_quickpicks
          in: query
          description: Include meltwater-provided QUICKPICK filter sets, default "false"
          required: false
          schema:
            type: boolean
      responses:
        '200':
          description: List of Filter Sets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FilterSetList'
              example:
                filter_sets:
                  - id: 123
                    name: English and from the UK
                    subtype: custom
                    type: saved
                  - id: 456
                    name: Well known french journalists
                    subtype: quickpick
                    type: saved
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '409':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
  /v3/custom_categories:
    get:
      tags:
        - Listening Search Management
      summary: Get a list of all search custom categories
      operationId: list_custom_categories
      parameters:
        - name: company_id
          in: query
          description: Company which owns the given custom categories. If not specified your
            default company is used.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: List of Custom Categories
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomCategoriesList'
              example:
                count: 2
                custom_categories:
                  - id: 123
                    name: Japanese cars
                    type: include
                  - id: 456
                    name: German cars
                    type: exclude
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '503':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - apikey: [ ]
  /v3/analytics/{searchId}:
    get:
      tags:
        - Listening Analytics
      summary: A summary of analytics for a Saved Search.
      description: "The summary is produced only for documents matching the Saved\
        \ Search,\nfrom the specified document sources, and within the specified time-range.\n\
        \nAny other parameters provided, such as language or country, will further\n\
        restrict the documents that are included in the analysis.\n\nThe `unique_authors`\
        \ value can only be calculated for sources other than `news`.\nWhen run against\
        \ `news` it will return 0.\n"
      operationId: getV3Analytics-searchId-start-end-tz-source-country-language-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SummaryResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_tags:
    get:
      tags:
        - Listening Analytics
      summary: The top tags that occur in a Saved Search.
      description: "Produces a ranked list of tags that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top tags\
        \ produced,\ndefaulting to the top `10` tags.\n\nAny other parameters provided,\
        \ such as language or country, will further\nrestrict the documents that have\
        \ their tags included.\n\nThe type of tags included, such as Twitter \"hashtags\"\
        , will depend on the\nselected sources."
      operationId: getV3AnalyticsTop_tags-searchId-start-end-tz-source-country-language-size-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - facebook
              - instagram
              - twitter
              - tiktok
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopTagsResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_locations:
    get:
      tags:
        - Listening Analytics
      summary: The top locations that occur in a Saved Search.
      description: "Produces a ranked list of locations that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top locations\
        \ produced,\ndefaulting to the top `100` locations.\n\nThe level parameter\
        \ allows you to select the level of location you want from country, state\
        \ or city.\n\nAny other parameters provided, such as language or country,\
        \ will further\nrestrict the documents that have their keyphrases included.\n"
      operationId: getV3AnalyticsTop_locations-searchId-start-end-tz-source-country-language-size-level-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - broadcast
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: level
          in: query
          description: "The level of location to be used, may be one of: country, state,\
          \ city"
          required: true
          schema:
            type: string
            enum:
              - city
              - country
              - state
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopLocationsResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_shared:
    get:
      tags:
        - Listening Analytics
      summary: The top shared documents that occur in a Saved Search.
      description: "Produces a ranked list of documents matching the Saved Search\
        \ that were\nthe most shared, from the specified document sources, and within\
        \ the\nspecified time-range.\n\nThe `size` parameter controls the number of\
        \ top shared documents\nproduced, defaulting to the top `10` top shared documents.\n\
        \nAny other parameters provided, such as language or country, will further\n\
        restrict the documents that are included.\n\nThe `sort_by` parameter controls\
        \ the ranking of the results. For example,\nif `sort_by=retweets`, the results\
        \ will be the top N documents by retweet\ncount. Retweet results are based\
        \ on when the retweet occured, not the\ncreation date of the original tweet"
      operationId: getV3AnalyticsTop_shared-searchId-start-end-tz-source-country-language-size-sort_by-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - twitter
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 100 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: sort_by
          in: query
          description: Field to rank results by.
          required: true
          schema:
            type: string
            example: retweets
            enum:
              - retweets
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopSharedResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_entities:
    get:
      tags:
        - Listening Analytics
      summary: The top named entities that occur in a Saved Search.
      description: "Produces a ranked list of entities that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top keyphrases\
        \ produced,\ndefaulting to the top `100` keyphrases.\n\nThe sentiment parameter\
        \ allows you to select the sentiment of the documents to analyze.\n\nAny other\
        \ parameters provided, such as language or country, will further\nrestrict\
        \ the documents that have their keyphrases included.\n"
      operationId: getV3AnalyticsTop_entities-searchId-start-end-tz-source-country-language-size-sentiment-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: sentiment
          in: query
          description: "The overall sentiment of the document to filter on, positive,\
          \ neutral or negative."
          schema:
            type: string
            enum:
              - negative
              - neutral
              - positive
          example:
            - positive
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopEntitiesResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_sources:
    get:
      tags:
        - Listening Analytics
      summary: The top sources that occur in a Saved Search.
      description: "Produces a ranked list of \"sources\" that provided the documents\
        \ matching the Saved Search.\n\nFor social sources, a \"source\" will be the\
        \ author of that document.\n\nThe `size` parameter controls the maximum number\
        \ of sources to produce, defaulting\nto the top `10` sources.\n\nAny other\
        \ parameters provided, such as language or country, will further\nrestrict\
        \ the documents whose sources will be produced.\n"
      operationId: getV3AnalyticsTop_sources-searchId-start-end-tz-source-country-language-size-min_authority-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - twitter
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: min_authority
          in: query
          description: "The minimum authority score of sources to include.\n\nWhen provided,\
          \ sets a lower-bound on the authority score of sources produced\nin the\
          \ results.\n\nFrom 0 to 10 inclusive.\n"
          schema:
            type: string
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopSourcesResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_keyphrases:
    get:
      tags:
        - Listening Analytics
      summary: The top keyphrases that occur in a Saved Search.
      description: "Produces a ranked list of keyphrases that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top keyphrases\
        \ produced,\ndefaulting to the top `100` keyphrases.\n\nThe sentiment parameter\
        \ allows you to select the sentiment of the documents to analyze.\n\nAny other\
        \ parameters provided, such as language or country, will further\nrestrict\
        \ the documents that have their keyphrases included.\n"
      operationId: getV3AnalyticsTop_keyphrases-searchId-start-end-tz-source-country-language-size-sentiment-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: sentiment
          in: query
          description: "The overall sentiment of the document to filter on, positive,\
          \ neutral or negative."
          schema:
            type: string
            enum:
              - negative
              - neutral
              - positive
          example:
            - positive
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopKeyphrasesResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_mentions:
    get:
      tags:
        - Listening Analytics
      summary: The top mentions that occur in a Saved Search.
      description: "Produces a ranked list of mentions that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top tags\
        \ produced,\ndefaulting to the top `10` mentions."
      operationId: getV3AnalyticsTop_mentions-searchId-start-end-tz-source
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopMentionsResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_topics:
    get:
      tags:
        - Listening Analytics
      summary: The top topics that occur in a Saved Search.
      description: "Produces a ranked list of topics and their sub topics that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top topics\
        \ produced,\ndefaulting to the top `10` mentions."
      operationId: getV3AnalyticsTop_topics-searchId-start-end-tz-source
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.

            From 1 to 1000 inclusive.

            Only the top/first results will be produced.
          schema:
            type: string
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopTopicsResponse'
      deprecated: false
  /v3/analytics/{searchId}/top_shared_links:
    get:
      tags:
        - Listening Analytics
      summary: The top shared links that occur in a Saved Search.
      description: "Produces a ranked list of links that occur in documents matching\
        \ the\nSaved Search, from the specified document sources, and within the\n\
        specified time-range.\n\nThe `size` parameter controls the number of top shared links \
        \ produced,\ndefaulting to the top `100` links.\n\nAny other\
        \ parameters provided, such as language or country, will further\nrestrict\
        \ the documents that have their links included.\n"
      operationId: getV3AnalyticsTop_sharedLinks-searchId-start-end-tz-source-country-language-size-sentiment-company_id
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search.
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: "The timestamp of the start of the time-range to query.\n\nAn\
          \ ISO8601 timestamp, excluding timezone/offset.\n\nIncludes both the date\
          \ and time components of the ISO8601 timestamp, but\n_excludes_ the timezone\
          \ offset component. The timestamp represents the\nlocal time at the timezone\
          \ given in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-27T00:00:00'
          example: '2021-09-27T00:00:00'
        - name: end
          in: query
          description: "The timestamp of the end of the time-range to query.\n\nAn ISO8601\
          \ timestamp, excluding timezone/offset.\n\nIncludes both the date and time\
          \ components of the ISO8601 timestamp, but\n_excludes_ the timezone offset\
          \ component. The timestamp represents the\nlocal time at the timezone given\
          \ in the `tz` parameter."
          required: true
          schema:
            type: string
            example: '2021-09-28T00:00:00'
          example: '2021-09-28T00:00:00'
        - name: tz
          in: query
          description: "The timezone ID for all timestamps in the request and response.\n\
          \nAn identifier from the IANA TimeZone Database (tzdb),\nor a timezone offset,\
          \ from UTC.\n\nAn offset, or `UTC`, will provide a stable timezone that\
          \ remains\nthe same, year-round.\n\nA location ID, such as `Europe/London`,\
          \ will automatically\nincorporate that location's local timezone rules,\
          \ including\ndaylight-savings (if applicable), and any other adjustments\
          \ to\nlocal time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).\n\
          \nAs a consequence: when using a location ID, it is possible for\ntime-ranges\
          \ that cross a timezone adjustment in that locale to be\nlonger or shorter\
          \ than you might expect; e.g. a day with 23 or 25\nhours when a daylight\
          \ savings adjustment occurs.\n\nThe `start` and `end` parameters in your\
          \ request will be interpreted\nto be local to this timezone.\n\nAll timestamps,\
          \ dates and times in the response will be generated\nlocal to this timezone."
          required: true
          schema:
            type: string
            example: Europe/London
        - name: source
          in: query
          description: "The data source to query. By default all available sources are included however you can also provide
          multiple source values to filter."
          schema:
            type: string
            example: twitter
            enum:
              - forums
              - blogs
              - douyin
              - sina_weibo
              - twitch
              - facebook
              - reddit
              - wechat
              - news
              - pinterest
              - twitter
              - instagram
              - little_red_book
              - bilibili
              - youku
              - kakaotalk
              - linevoom
              - tiktok
              - broadcast
        - name: country
          in: query
          description: "The origin country of documents to include in the query.\n\n\
          The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
          \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
          of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
          \nThis restricts the documents queried to include only those that\noriginated\
          \ from a particular country.\n\nIf multiple countries are specified, documents\
          \ that originated from any\nof those countries will be included in results.\n\
          \nDocuments that originated in some countries may be restricted from your\n\
          queries automatically, based on your jurisdiction and entitlements."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - US
        - name: language
          in: query
          description: "The language of documents to include in the query.\n\nA primary\
          \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
          \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
          [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
          the following special language codes are also supported:\n\n  * `zh-Hans`\
          \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
          \ `zz` - for unknown language\n\nThis restricts the documents queried to\
          \ include only those in a\nparticular language.\n\nIf multiple languages\
          \ are specified, documents in any of those languages\nwill be included in\
          \ the results."
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - en
        - name: size
          in: query
          description: |-
            The maximum number of results to produce.
            From 1 to 1000 inclusive.
            Only the top/first results will be produced.
          schema:
            type: string
        - name: company_id
          in: query
          description: Company which owns the given searchId. If not specified your
            default company is used.
          schema:
            type: string
      responses:
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        "429":
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        "503":
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopSharedLinksResponse'
      deprecated: false
  /v3/analytics/{searchId}/custom:
    post:
      tags:
        - Listening Analytics
      summary: Create a custom analytics request
      description: "Create a custom analytics request with your choice of filters and analytic types and configuration.\n\n\
                Please see example requests/responses below or our guide on Custom Analytics [here](/guides/listening/analyzing-mentions) for more information."
      parameters:
        - name: searchId
          in: path
          description: The ID of the Saved Search
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomAnalyticsRequest'
            examples:
              Document Count:
                summary: Document Count
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "document_count"
              Top Terms:
                summary: Top Terms
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "top_terms"
                    dimension: "language"
              Count Unique:
                summary: Count Unique
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "count_unique"
                    dimension: "language"
              Measure Statistics:
                summary: Measure Statistics
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "measure_statistics"
                    measures: ["views"]
              Date Histogram:
                summary: Date Histogram
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "date_histogram"
                    granularity: "day"
              Date Histogram/Top Terms:
                summary: Date Histogram / Top Terms
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "date_histogram"
                    granularity: "day"
                    analysis:
                      type: "top_terms"
                      dimension: "language"
              Top Terms/Top Terms:
                summary: Top Terms / Top Terms
                value:
                  start: "2024-01-01T00:00:00"
                  end: "2024-01-10T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "top_terms"
                    dimension: "location_country"
                    analysis:
                      type: "top_terms"
                      dimension: "language"
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomAnalyticsResponse'
              examples:
                Document Count:
                  summary: Document Count
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "document_count"
                    result:
                      document_count: 123456
                Top Terms:
                  summary: Top Terms
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "top_terms"
                      dimension: "language"
                    result:
                      document_count: 123456
                      analysis:
                        - key: "EN"
                          label: "English"
                          document_count: 123456
                          percentage: 50.1
                        - key: "JA"
                          label: "Japanese"
                          document_count: 21
                          percentage: 0.2
                Count Unique:
                  summary: Count Unique
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "count_unique"
                      dimension: "language"
                    result:
                      document_count: 123456
                      analysis: 513
                Measure Statistics:
                  summary: Measure Statistics
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "measure_statistics"
                      measures: [ "views" ]
                    result:
                      document_count: 123456
                      analysis:
                        views:
                          avg: 8.45
                          max: 110021.00
                          min: 0.00
                          sum: 215654.00
                Date Histogram:
                  summary: Date Histogram
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "date_histogram"
                      granularity: "day"
                    result:
                      document_count: 123456
                      analysis:
                        - key: "2024-01-01T00:00:00"
                          document_count: 512
                          percentage: 10.0
                          change: 0
                        - key: "2024-01-02T00:00:00"
                          document_count: 943
                          percentage: 25.3
                          change: 431
                Date Histogram/Top Terms:
                  summary: Date Histogram / Top Terms
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "date_histogram"
                      granularity: "day"
                      analysis:
                        type: "top_terms"
                        dimension: "language"
                      result:
                        document_count: 123456
                        analysis:
                          - key: "2024-01-01T00:00:00"
                            document_count: 512
                            percentage: 10.0
                            change: 0
                            analysis:
                              - key: "EN"
                                label: "English"
                                document_count: 123456
                                percentage: 50.1
                              - key: "JA"
                                label: "Japanese"
                                document_count: 21
                                percentage: 0.2
                          - key: "2024-01-02T00:00:00"
                            document_count: 943
                            percentage: 25.3
                            change: 431
                            analysis:
                              - key: "EN"
                                label: "English"
                                document_count: 123456
                                percentage: 50.1
                              - key: "JA"
                                label: "Japanese"
                                document_count: 21
                                percentage: 0.2
                Top Terms/Top Terms:
                  summary: Top Terms / Top Terms
                  value:
                    start: "2024-01-01T00:00:00"
                    end: "2024-01-10T00:00:00"
                    tz: "UTC"
                    search_id: 987654
                    analysis:
                      type: "top_terms"
                      dimension: "location_country"
                      analysis:
                        type: "top_terms"
                        dimension: "language"
                      result:
                        document_count: 123456
                        analysis:
                          - key: "US"
                            label: "United States"
                            document_count: 123456
                            percentage: 50.1
                            analysis:
                              - key: "EN"
                                label: "English"
                                document_count: 123456
                                percentage: 50.1
                              - key: "JA"
                                label: "Japanese"
                                document_count: 21
                                percentage: 0.2
                          - key: "JP"
                            label: "Japan"
                            document_count: 21
                            percentage: 0.2
                            analysis:
                              - key: "EN"
                                label: "English"
                                document_count: 123456
                                percentage: 50.1
                              - key: "JA"
                                label: "Japanese"
                                document_count: 21
                                percentage: 0.2
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
  /v3/analytics/custom/catalog:
    get:
      tags:
        - Listening Analytics
      summary: Fetch the latest custom analytics options
      description: Fetch the latest dimensions, measures, and analytic types you can use to create your custom analytic requests.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomAnalyticsCatalogResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
  /v3/exports/one-time:
    post:
      tags:
        - Listening Exports
      summary: Creates a new one-time export
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OneTimeExportResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: false
          name: company_id
          in: query
          description: Company which owns the given search_id. If not specified your
            default company is used.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OneTimeExportRequest'
        description: 'One-time export object to create.'
      operationId: create_onetime_export
      description: ''
    get:
      tags:
        - Listening Exports
      summary: Get a list of all your one-time exports
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OneTimeExportListResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      operationId: list_onetime_exports
      description: ''
  /v3/exports/one-time/{id}:
    get:
      tags:
        - Listening Exports
      summary: Get details of a one-time export
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OneTimeExportResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: true
          name: id
          in: path
          description: One-time export id
          example: 123
          schema:
            type: integer
      operationId: show_onetime_export
      description: ''
    delete:
      tags:
        - Listening Exports
      summary: Removes an existing one-time export
      responses:
        '204':
          description: No content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: true
          name: id
          in: path
          description: One-time export id
          example: 123
          schema:
            type: integer
      operationId: delete_onetime_export
      description: ''
  /v3/exports/recurring:
    post:
      tags:
        - Listening Exports
      summary: Creates a new recurring export
      responses:
        '201':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringExportResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: false
          name: company_id
          in: query
          description: Company which owns the given search_id. If not specified your
            default company is used.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecurringExportRequest'
        description: 'Export object to create.


          The `timezone` field specifies what timezone the `window_time` field should
          be interpreted as.


          The `window_time_unit` field determines the size of the export window and
          often the export will be refreshed.


          Please see the Model Schema for possible values of `window_time_unit`.

          '
      operationId: create_recurring_export
      description: ''
    get:
      tags:
        - Listening Exports
      summary: Get a list of all your recurring exports
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringExportListResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      operationId: list_recurring_exports
      description: ''
  /v3/exports/recurring/{id}:
    get:
      tags:
        - Listening Exports
      summary: Get details of a recurring export
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecurringExportShowResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: true
          name: id
          in: path
          description: Export id
          example: 123
          schema:
            type: integer
      operationId: show_recurring_export
      description: ''
    delete:
      tags:
        - Listening Exports
      summary: Removes an existing recurring export
      responses:
        '204':
          description: No content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                title: Bad Request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: Invalid data
                      details: Invalid JSON payload
                description: Bad Request
        '401':
          description: Unauthorized Request
          content:
            application/json:
              schema:
                type: object
                title: Unauthorized request
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: AUTH
                      title: Unauthorized
                      details: Invalid or expired authorization header
                description: Unauthorized request
        '403':
          description: Permission Denied
          content:
            application/json:
              schema:
                type: object
                title: Permission denied
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: ENTITLEMENT
                      title: Entitlement missing
                      details: 'You are missing required entitlements, in order to access
                      given content: ["news", "social"]. Please contact your sales
                      representative to add the necessary entitlement to your Meltwater
                      account.'
                description: Permission denied
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                title: Not Found
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: EXPORT
                      title: Unknown resource
                      details: The resource id you provided (1234) is unknown
                description: Not Found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                title: Unprocessable entity
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: VALIDATION
                      title: 'Validation error for field: window_size'
                      details: is not a valid integer
                description: Unprocessable entity
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                title: Internal Server Error
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: INTERNAL
                      title: Internal Server error
                      details: Something went wrong behind the scenes...
                description: Internal Server Error
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                title: Service Unavailable
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      required:
                        - type
                        - details
                        - title
                      properties:
                        type:
                          type: string
                          example: VALIDATION
                          description: Category of error
                        title:
                          type: string
                          example: 'Validation error for field: type'
                          description: Title of error
                        details:
                          type: string
                          example: This field cannot be updated
                          description: Details about the error
                      additionalProperties: false
                    description: List of problems with the request
                example:
                  errors:
                    - type: SEARCH
                      title: Service unavailable
                      details: Temporarily unable to handle the request, try again later
                description: Service Unavailable
      parameters:
        - required: true
          name: id
          in: path
          description: Export id
          example: 123
          schema:
            type: integer
      operationId: delete_recurring_export
      description: ''
  /v3/imports/documents:
    post:
      tags:
        - Bring Your Own Content (BYOC)
      operationId: handleByocDocuments
      summary: Ingest BYOC documents
      description: Handles the import of documents into the Meltwater Platform.
      parameters:
        - name: import_tag
          in: query
          description: Comma-separated list of import tags to assigned to the imported documents.
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company where the change will be applied. If not specified your
            default company is used.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ByocImportsDocumentsRequest'
        description: Document(s) to be imported.
        required: true
      responses:
        "200":
          description: Documents imported successfully received.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocImportsDocumentsResult'
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'

  /v3/imports/batches:
    get:
      tags:
        - Bring Your Own Content (BYOC)
      summary: List import batches
      description: Retrieves a list of import batches. Supports filtering by date
        range (start/end) and batch status. Dates are interpreted in the specified
        timezone (defaults to UTC).
      parameters:
      - name: start
        in: query
        description: "Start date for filtering batches (ISO 8601 local timestamp without timezone). Must be used with the 'tz' parameter to specify timezone, defaults to UTC."
        schema:
          type: string
      - name: end
        in: query
        description: "End date for filtering batches (ISO 8601 local timestamp without timezone). Must be used with the 'tz' parameter to specify timezone, defaults to UTC."
        schema:
          type: string
      - name: tz
        in: query
        description: |-
          The timezone ID for timestamps in the request and response.

          An identifier from the IANA TimeZone Database (tzdb), or a timezone offset, from UTC.

          An offset, or `UTC`, will provide a stable timezone that remains the same, year-round.

          A location ID, such as `Europe/London`, will automatically incorporate that location's local timezone rules, including daylight-savings (if applicable), and any other adjustments to local time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
        schema:
          type: string
      - name: status
        in: query
        description: Comma-separated list of statuses (pending,finished,failed) for
          filtering batches
        schema:
          type: string
      - name: import_tag
        in: query
        description: Comma-separated list of import tags. The response will include any batches that were assigned to at least one of the import tags in the list.
        schema:
          type: string
      - name: page
        in: query
        description: Page number for pagination (must be > 0)
        schema:
          type: integer
          minimum: 1
          default: 1
      - name: page_size
        in: query
        description: Number of items per page (must be > 0 and <= 100)
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 20
      - name: company_id
        in: query
        description: Meltwater company id if running a request on behalf of another company.
        schema:
          type: string
      responses:
        "200":
          description: Successfully retrieved list of batches
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocListBatchesResult'
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'
  /v3/imports/batches/{batch_id}:
    get:
      tags:
        - Bring Your Own Content (BYOC)
      summary: Get import batch
      description: Retrieves status and statistics about an import batch.
      parameters:
      - name: batch_id
        in: path
        description: Batch ID to retrieve
        required: true
        schema:
          type: string
          format: uuid
      - name: tz
        in: query
        description: |-
          The timezone ID for timestamps in the response.

          An identifier from the IANA TimeZone Database (tzdb), or a timezone offset, from UTC.

          An offset, or `UTC`, will provide a stable timezone that remains the same, year-round.

          A location ID, such as `Europe/London`, will automatically incorporate that location's local timezone rules, including daylight-savings (if applicable), and any other adjustments to local time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
        schema:
          type: string
      - name: company_id
        in: query
        description: Meltwater company id if running a request on behalf of another
          company
        schema:
          type: string
      responses:
        "200":
          description: Successfully retrieved batch information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocGetBatchesResult'
        "400":
          description: Bad request - invalid batch ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'
        "404":
          description: Import tag not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'

  /v3/imports/import_tags/{import_tag}:
    get:
      tags:
      - Bring Your Own Content (BYOC)
      summary: Get import tag
      description: Retrieves status and statistics about an import tag.
      parameters:
      - name: import_tag
        in: path
        description: Import tag to retrieve
        required: true
        schema:
          type: string
      - name: tz
        in: query
        description: |-
          The timezone ID for timestamps in the response.

          An identifier from the IANA TimeZone Database (tzdb),
          or a timezone offset, from UTC.

          An offset, or `UTC`, will provide a stable timezone that remains
          the same, year-round.

          A location ID, such as `Europe/London`, will automatically
          incorporate that location's local timezone rules, including
          daylight-savings (if applicable), and any other adjustments to
          local time. There is a full list available on [Wikipedia](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
        schema:
          type: string
      - name: company_id
        in: query
        description: Meltwater company id if running a request on behalf of another
          company
        schema:
          type: string
      responses:
        "200":
          description: Successfully retrieved import tag information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocGetImportTagsResult'
        "400":
          description: Bad request - invalid batch ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'
        "404":
          description: Import tag not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIValidationError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ByocResultAPIError'

  /v3/search/{id}:
    post:
      tags:
        - Listening Search
      summary: Search for Meltwater earned data using a saved search and optional filters.
      description: Search for Meltwater earned data using a saved search and optional filters.
      parameters:
        - name: id
          in: path
          description: Search ID
          required: true
          schema:
            type: integer
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Search Parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchRequest'
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsServiceUnavailable'
      operationId: create-earned-search
  /v3/usage/me/metrics/{metric}:
    get:
      tags:
        - Account Management
      summary: Get usage information on specific metric
      description: Get usage information on specific metric
      parameters:
        - name: metric
          in: path
          description: "The metric type name. The following metrics are allowed for these features: exports - [export_count, document_count], streaming - [document_count], imports - [uploaded_documents]"
          required: true
          schema:
            type: string
            enum:
              - export_count
              - document_count
              - uploaded_documents
        - name: token_id
          in: query
          description: Optional API token ID to filter usage
          required: false
          schema:
            type: string
        - name: feature
          in: query
          description: The feature name of the statistics your want to query
          required: true
          schema:
            type: string
            enum:
              - exports
              - streaming
              - search
              - imports
        - name: period
          in: query
          description: The time period for this statistics query
          schema:
            type: string
            default: 24hours
            enum:
              - 24hours
              - 7days
              - 30days
              - 12months
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetricsTimeSeries'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
              examples:
                "Invalid feature":
                  value:
                    message: "Invalid feature"
                "Invalid period":
                  value:
                    message: "Invalid time period, choose from [24hours, 7days, 30days, 12months]"
                "Invalid metric":
                  value:
                    message: "Invalid metric, only [document_count] is available"
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
              examples:
                "Auth error":
                  value:
                    message: "Unauthorized"
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsageInternalErrorResponse'
              examples:
                "Unknown error":
                  value:
                    message: "We encountered an error fetching usage. Please try again."
      security:
        - apikey: [ ]
  /v3/usage/me/requests:
    get:
      tags:
        - Account Management
      summary: Get usage statistics for your API calls
      description: Get usage statistics for your API calls
      parameters:
        - name: token_id
          in: query
          description: Optional API token ID to filter usage
          required: false
          schema:
            type: string
        - name: period
          in: query
          description: The time period for this statistics query
          schema:
            type: string
            default: 24hours
            enum:
              - 24hours
              - 7days
              - 30days
              - 12months
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpRequestsTimeSeries'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationFailed'
              examples:
                "Invalid period":
                  value:
                    message: "Invalid time period, choose from [24hours, 7days, 30days, 12months]"
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
              examples:
                "Auth error":
                  value:
                    message: "Unauthorized"
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsageInternalErrorResponse'
              examples:
                "Unknown error":
                  value:
                    message: "We encountered an error fetching usage. Please try again."
      security:
        - apikey: [ ]
  /v3/owned/accounts:
    get:
      tags:
        - Owned Analytics
      summary: Returns a list of social account connections for a given company/user
        account
      description: Returns a list of social account connections for a given company/user
        account
      parameters:
        - name: company_id
          in: query
          description: Meltwater company id if running query on behalf of another company
          schema:
            type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/accounts.Response'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/accounts/metrics/breakdown:
    get:
      tags:
        - Owned Analytics
      summary: Returns a single-level breakdown by a category or concept
      description: A 'breakdown' metric is an analysis that provides a single-level
        breakdown by a category or concept. For example, the `demographics_audience_country`
        metric breaks down the audience for a Facebook page by country. All timestamps
        in this endpoint work on PST timezone (Meta's preferred timezone).
      parameters:
        - name: source
          in: query
          description: The social media source name
          required: true
          schema:
            type: string
            enum:
              - facebook
              - instagram
        - name: account_ids
          in: query
          description: "Comma separated list of account ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: metrics
          in: query
          description: "Comma separated list of metric ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: 'The timestamp of the start of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2022-01-01'
          required: true
          schema:
            type: string
        - name: end
          in: query
          description: 'The timestamp of the end of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2021-01-28'
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Meltwater company id if running query on behalf of another company
          schema:
            type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/breakdown.MetricsResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/accounts/metrics/heatmap:
    get:
      tags:
        - Owned Analytics
      summary: Returns a break-down over date and time
      description: A 'heatmap' metric is an analysis that provides a break-down over
        date and time. For example, the `page_fans_heatmap` metric breaks down the
        audience for a Facebook page by how active they are each day and hour. All
        timestamps in this endpoint work on PST timezone (Meta's preferred timezone).
      parameters:
        - name: source
          in: query
          description: The social media source name
          required: true
          schema:
            type: string
            enum:
              - facebook
              - instagram
        - name: account_ids
          in: query
          description: "Comma separated list of account ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: metrics
          in: query
          description: "Comma separated list of metric ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: 'The timestamp of the start of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2022-01-01'
          required: true
          schema:
            type: string
        - name: end
          in: query
          description: 'The timestamp of the end of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2021-01-28'
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Meltwater company id if running query on behalf of another company
          schema:
            type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/heatmap.MetricsResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/accounts/metrics/nested_breakdown:
    get:
      tags:
        - Owned Analytics
      summary: Returns a double-level breakdown by two categories or concepts
      description: A 'nested-breakdown' metric is an analysis that provides a double-level
        breakdown by two categories or concepts. For example, the `demographics_gender_age`
        metric breaks down the audience for a Facebook page by firstly gender, then
        age group. All timestamps in this endpoint work on PST timezone (Meta's preferred
        timezone).
      parameters:
        - name: source
          in: query
          description: The social media source name
          required: true
          schema:
            type: string
            enum:
              - facebook
              - instagram
        - name: account_ids
          in: query
          description: "Comma separated list of account ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: metrics
          in: query
          description: "Comma separated list of metric ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: 'The timestamp of the start of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2022-01-01'
          required: true
          schema:
            type: string
        - name: end
          in: query
          description: 'The timestamp of the end of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2021-01-28'
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Meltwater company id if running query on behalf of another company
          schema:
            type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/nested_breakdown.MetricsResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/accounts/metrics/numeric:
    get:
      tags:
        - Owned Analytics
      summary: Returns simple metrics for a social account
      description: A numeric metric is the most basic type of metrics you can get
        for your social media account, like the number of page fans. All timestamps
        in this endpoint work on PST timezone (Meta's preferred timezone).
      parameters:
        - name: source
          in: query
          description: The social media source name
          required: true
          schema:
            type: string
            enum:
              - facebook
              - instagram
              - linkedin
              - twitter
              - tiktok
        - name: account_ids
          in: query
          description: "Comma separated list of account ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: metrics
          in: query
          description: "Comma separated list of metric ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: start
          in: query
          description: 'The timestamp of the start of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2022-01-01'
          required: true
          schema:
            type: string
        - name: end
          in: query
          description: 'The timestamp of the end of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2021-01-28'
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Meltwater company id if running query on behalf of another company
          schema:
            type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/numeric.MetricsResponse'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/accounts/posts/top_posts:
    get:
      tags:
        - Owned Analytics
      summary: Allows to fetch the top posts for owned social accounts
      description: Allows to fetch the top posts for owned social accounts. You might
        do this to report the most engaged with posts in a period of time for example.
        Timestamps in this endpoint for Facebook and Instagram sources work on PST timezone (Meta's preferred timezone).
      parameters:
        - name: source
          in: query
          description: The social media source name
          required: true
          schema:
            type: string
            enum:
              - facebook
              - instagram
              - linkedin
              - twitter
              - tiktok
        - name: account_ids
          in: query
          description: "Comma separated list of account ids. Maximum: 10"
          required: true
          schema:
            type: string
        - name: metrics
          in: query
          description: "Comma separated list of metric ids. Maximum: 10"
          schema:
            type: string
        - name: start
          in: query
          description: 'The timestamp of the start of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2022-01-01'
          required: true
          schema:
            type: string
        - name: end
          in: query
          description: 'The timestamp of the end of the time-range to query. An ISO8601 timestamp, excluding time and timezone/offset component. Example: 2021-01-28'
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Meltwater company id if running a query on behalf of another
            company
          schema:
            type: string
        - name: page
          in: query
          description: Used for paginating results
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          description: The number of results to return per request
          schema:
            maximum: 100
            minimum: 1
            type: integer
            default: 10
        - name: sort_by
          in: query
          description: Field on which the response will be sorted
          schema:
            type: string
            default: created_time
            enum:
              - comment_count
              - comments
              - comments_count
              - created_at
              - engagement_rate
              - reactions_count
              - shares_count
        - name: sort_order
          in: query
          description: The sort order
          schema:
            type: string
            default: desc
            enum:
              - desc
              - asc
        - name: post_types
          in: query
          description: The type of posts to retrieve
          schema:
            type: string
            enum:
              - link
              - status
              - photo
              - video
              - album
              - image
              - carousel_album
              - story
              - igtv
              - reels
              - article
              - rich
              - learning_course
              - job
              - question
              - answer
              - carousel
              - topic
              - native_document
              - urn_reference
              - live_video
              - text
              - animated_gif
        - name: tag
          in: query
          description: Optional list of tags to filter the documents by
          schema:
            type: array
            items:
              type: string
        - name: match_all_tags
          description: If true, only documents with all tags provided will be returned
          in: query
          schema:
            default: false
            type: boolean
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/posts.TopPostsResponse'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/owned/supported_metrics:
    get:
      tags:
        - Owned Analytics
      summary: Returns a list of supported metrics
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/supported_metrics.Response'
        400:
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
        401:
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        500:
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apikey: [ ]
  /v3/hooks:
    get:
      tags:
        - Listening Streaming
      summary: List all hooks.
      description: |-
        List all hooks.

        Delivers all previously generated hooks.
      responses:
        "200":
          description: List all hooks.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HooksCollection"
        "401":
          description: Invalid or expired token.
        "403":
          description: Not entitled to the service
        "500":
          description: Something went wrong while trying to fetch your hooks.
      operationId: getAllHooks
      security:
        - apikey: [ ]
    post:
      tags:
        - Listening Streaming
      summary: Creates a hook
      description: >-
        Creates a hook for one of your predefined searches.
         Delivers search results for the query referenced by the `search_id` to the `target_url` via HTTP POST. Note that a `hook_id` will be returned on successful creation, this id is needed to delete the hook.

         We are also returning the header: `X-Hook-Secret`, a shared secret used to sign the document body pushed to your `target_url`.


         Specify `company_id` if your `search_id` is not in your default company.
      parameters:
        - in: header
          name: X-Hook-Secret
          description: |
            Shared secret for content signing/verification.

            The shared secret header is optional and can be provided by the user
            or will be set by the API. Must be between 16 and 64 characters.
            Obtain the shared secret from the response header `X-Hook-Secret`.

            #### Example:

                e2d264b524240b9572ebc2fc7eebd980
          required: false
          schema:
            type: string
        - in: query
          name: company_id
          description: Company that owns the specified search_id. If not specified your
            default company is used.
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/postV2Hooks"
        required: true
      responses:
        "201":
          description: Successfully Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Hook"
        "400":
          description: Missing required parameters.
        "401":
          description: Invalid or expired token.
        "403":
          description: Not entitled to the service
        "404":
          description: The search you are trying to create a REST hook for was not found.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsCollection"
        "409":
          description: The hook you are trying to create already exists for the specified
            search_id and target_url.
        "500":
          description: Something went wrong while trying to create your REST hook.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsCollection"
      operationId: createHook
      security:
        - apikey: [ ]
  /v3/hooks/{hook_id}:
    delete:
      tags:
        - Listening Streaming
      summary: Delete an existing hook.
      description: >-
        Delete an existing hook.
         Removes the hook and stops sending any search results to the target_url.
      parameters:
        - in: path
          name: hook_id
          description: Hook ID received from creating a hook
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successfully Deleted
        "400":
          description: Missing required parameters.
        "401":
          description: Invalid or expired token.
        "403":
          description: Not entitled to the service
        "404":
          description: The REST hook you are trying to delete was not found
        "500":
          description: Something went wrong while trying to delete your hook(-s).
      operationId: deleteHook
      security:
        - apikey: [ ]
    get:
      tags:
        - Listening Streaming
      summary: Get an individual hook.
      description: |-
        Get an individual hook.

        Retrieves an existing hook.
      parameters:
        - in: path
          name: hook_id
          description: Hook ID
          required: true
          schema:
            type: string
      responses:
        "200":
          description: Successfully Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SingleHook"
        "401":
          description: Invalid or expired token.
        "403":
          description: Not entitled to the service
        "404":
          description: The hook you are trying to get was not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsCollection"
        "500":
          description: Something went wrong while trying to fetch your hooks.
      operationId: getHook
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields:
    get:
      tags:
        - Explore+ Assets
      summary: List all custom fields.
      description: List all custom fields.
      parameters:
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          description: "The number of custom fields to return per request. Min: 1, Max:\
          \ 100"
          schema:
            maximum: 100
            minimum: 1
            type: integer
            default: 10
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_fields.MultiCustomFieldsResponse'
              examples:
                List Custom Fields:
                  summary: List Custom Fields
                  value:
                    page: 1
                    page_size: 10
                    total: 2
                    custom_fields:
                      - id: 1234
                        folder_id: 12
                        name: "My Custom Field"
                        description: "my first custom field"
                        created: "2025-01-01T00:00:00Z"
                        updated: "2025-01-01T00:00:00Z"
                        type: "multi_value"
                      - id: 5678
                        folder_id: null
                        name: "My Custom Field Tag"
                        description: "my second custom field"
                        created: "2025-01-01T00:00:00Z"
                        updated: "2025-01-01T00:00:00Z"
                        type: "tag"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    post:
      tags:
        - Explore+ Assets
      summary: Create a new custom field.
      description: Create a new custom field.
      parameters:
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Custom Field
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_fields.CreateCustomFieldRequestInput'
            examples:
              Create Tag Custom Field:
                summary: Create a Custom Field Tag
                value:
                  custom_field:
                    name: My Custom Field
                    description: "my new custom field"
                    type: "tag"
              Create Multi-Value Custom Field:
                summary: Create a Multi-Value Custom Field
                value:
                  custom_field:
                    name: My Custom Field
                    description: "my new custom field"
                    folder_id: 123
                    type: "multi_value"
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_fields.SingleCustomFieldResponse'
              examples:
                Create Tag Custom Field:
                  summary: Create a Custom Field Tag
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: null
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "tag"
                      values:
                        - id: 456
                          name: "my custom field value"
                          color: "#FFFFFF"
                          created: "2025-01-01T00:00:00Z"
                          updated: "2025-01-01T00:00:00Z"
                          num_rules: 0
                Create Multi-Value Custom Field:
                  summary: Create a Multi-Value Custom Field
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: 123
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "multi_value"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/{custom_field_id}:
    get:
      tags:
        - Explore+ Assets
      summary: Fetch a given custom field.
      description: Fetch a given custom field.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_fields.SingleCustomFieldResponse'
              examples:
                Get Tag Custom Field:
                  summary: Get a Custom Field Tag
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: null
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "tag"
                      values:
                        - id: 456
                          name: "my custom field value"
                          color: "#FFFFFF"
                          created: "2025-01-01T00:00:00Z"
                          updated: "2025-01-01T00:00:00Z"
                          num_rules: 0
                Get Multi-Value Custom Field:
                  summary: Get a Multi-Value Custom Field
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: 123
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "multi_value"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    put:
      tags:
        - Explore+ Assets
      summary: Update a given custom field.
      description: Update a given custom field.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Custom Field
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_fields.UpdateCustomFieldRequestInput'
            examples:
              Update Tag Custom Field:
                summary: Update a Custom Field Tag
                value:
                  custom_field:
                    name: My Custom Field
                    description: "my new custom field"
                    type: "tag"
              Update Multi-Value Custom Field:
                summary: Update a Multi-Value Custom Field
                value:
                  custom_field:
                    name: My Custom Field
                    description: "my new custom field"
                    folder_id: 123
                    type: "multi_value"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_fields.SingleCustomFieldResponse'
              examples:
                Update Tag Custom Field:
                  summary: Update a Custom Field Tag
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: null
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "tag"
                      values:
                        - id: 456
                          name: "my custom field value"
                          color: "#FFFFFF"
                          created: "2025-01-01T00:00:00Z"
                          updated: "2025-01-01T00:00:00Z"
                          num_rules: 0
                Update Multi-Value Custom Field:
                  summary: Update a Multi-Value Custom Field
                  value:
                    custom_field:
                      name: My Custom Field
                      description: "my new custom field"
                      folder_id: 123
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      type: "multi_value"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    delete:
      tags:
        - Explore+ Assets
      summary: Delete a given custom field.
      description: Delete a given custom field.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "204":
          description: No Content
          content: { }
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/{custom_field_id}/values:
    post:
      tags:
        - Explore+ Assets
      summary: Create a new custom field value.
      description: Create a new custom field value.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Custom Field Value
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_field_values.CreateCustomFieldValueRequestInput'
            examples:
              Create Custom Field Value:
                summary: Create a Custom Field Value
                value:
                  custom_field_value:
                    name: "My Custom Field Value"
                    color: "#FFFFFF"
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_field_values.SingleCustomFieldValueResponse'
              examples:
                Create Custom Field Value:
                  summary: Create a Custom Field Value
                  value:
                    custom_field_value:
                      id: 123
                      name: "My Custom Field Value"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/{custom_field_id}/values/{value_id}:
    get:
      tags:
        - Explore+ Assets
      summary: Fetch a given custom field value.
      description: Fetch a given custom field value.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_field_values.SingleCustomFieldValueResponse'
              examples:
                Get Custom Field Value:
                  summary: Get a Custom Field Value
                  value:
                    custom_field_value:
                      id: 123
                      name: "My Custom Field Value"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      rules:
                        - id: 456
                          created: "2025-01-01T00:00:00Z"
                          updated: "2025-01-01T00:00:00Z"
                          query:
                            case_sensitivity: "no"
                            all_keywords:
                              - "honda"
                            any_keywords:
                              - "mazda"
                            not_keywords:
                              - "nissan"
                            type: "keyword"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    put:
      tags:
        - Explore+ Assets
      summary: Update a given custom field value.
      description: Update a given custom field value.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Custom Field Value
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_field_values.CreateCustomFieldValueRequestInput'
            examples:
              Update Custom Field Value:
                summary: Update a Custom Field Value
                value:
                  custom_field_value:
                    name: "My Custom Field Value"
                    color: "#FFFFFF"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_field_values.SingleCustomFieldValueResponse'
              examples:
                Update Custom Field Value:
                  summary: Update a Custom Field Value
                  value:
                    custom_field_value:
                      id: 123
                      name: "My Custom Field Value"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      rules:
                        - id: 456
                          created: "2025-01-01T00:00:00Z"
                          updated: "2025-01-01T00:00:00Z"
                          query:
                            case_sensitivity: "no"
                            all_keywords:
                              - "honda"
                            any_keywords:
                              - "mazda"
                            not_keywords:
                              - "nissan"
                            type: "keyword"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    delete:
      tags:
        - Explore+ Assets
      summary: Delete a given custom field value.
      description: Delete a given custom field value.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "204":
          description: No Content
          content: { }
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/{custom_field_id}/values/{value_id}/rules:
    post:
      tags:
        - Explore+ Assets
      summary: Create a new assignment rule.
      description: Create a new assignment rule.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Assignment Rule
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/assignment_rules.CreateAssignmentRuleRequestInput'
            examples:
              Create Boolean Assignment Rule:
                summary: Create a Boolean Assignment Rule
                value:
                  rule:
                    query:
                      case_sensitivity: "no"
                      boolean: "honda OR mazda"
                      type: "boolean"
              Create Keyword Assignment Rule:
                summary: Create a Keyword Assignment Rule
                value:
                  rule:
                    query:
                      case_sensitivity: "no"
                      all_keywords:
                        - "honda"
                      any_keywords:
                        - "mazda"
                      not_keywords:
                        - "nissan"
                      type: "keyword"
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/assignment_rules.SingleAssignmentRuleResponse'
              examples:
                Create Boolean Assignment Rule:
                  summary: Create a Boolean Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        boolean: "honda OR mazda"
                        type: "boolean"
                Create Keyword Assignment Rule:
                  summary: Create a Keyword Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/{custom_field_id}/values/{value_id}/rules/{rule_id}:
    get:
      tags:
        - Explore+ Assets
      summary: Fetch a given assignment rule.
      description: Fetch a given assignment rule.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: rule_id
          in: path
          description: Assignment Rule ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/assignment_rules.SingleAssignmentRuleResponse'
              examples:
                Get Boolean Assignment Rule:
                  summary: Get a Boolean Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        boolean: "honda OR mazda"
                        type: "boolean"
                Get Keyword Assignment Rule:
                  summary: Get a Keyword Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    put:
      tags:
        - Explore+ Assets
      summary: Update a given assignment rule.
      description: Update a given assignment rule.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: rule_id
          in: path
          description: Assignment Rule ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Assignment Rule
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/assignment_rules.CreateAssignmentRuleRequestInput'
            examples:
              Update Boolean Assignment Rule:
                summary: Update a Boolean Assignment Rule
                value:
                  rule:
                    query:
                      case_sensitivity: "no"
                      boolean: "honda OR mazda"
                      type: "boolean"
              Update Keyword Assignment Rule:
                summary: Update a Keyword Assignment Rule
                value:
                  rule:
                    query:
                      case_sensitivity: "no"
                      all_keywords:
                        - "honda"
                      any_keywords:
                        - "mazda"
                      not_keywords:
                        - "nissan"
                      type: "keyword"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/assignment_rules.SingleAssignmentRuleResponse'
              examples:
                Update Boolean Assignment Rule:
                  summary: Update a Boolean Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        boolean: "honda OR mazda"
                        type: "boolean"
                Update Keyword Assignment Rule:
                  summary: Update a Keyword Assignment Rule
                  value:
                    rule:
                      id: 456
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "no"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    delete:
      tags:
        - Explore+ Assets
      summary: Delete a given assignment rule.
      description: Delete a given assignment rule.
      parameters:
        - name: custom_field_id
          in: path
          description: Custom Field ID
          required: true
          schema:
            type: integer
        - name: value_id
          in: path
          description: Custom Field Value ID
          required: true
          schema:
            type: integer
        - name: rule_id
          in: path
          description: Assignment Rule ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "204":
          description: No Content
          content: { }
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/custom_fields/folders:
    get:
      tags:
        - Explore+ Assets
      summary: List all custom field folders.
      description: List all custom field folders.
      parameters:
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          description: "The number of custom field folders to return per request. Min:\
          \ 1, Max: 100"
          schema:
            maximum: 100
            minimum: 1
            type: integer
            default: 10
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/custom_fields.CustomFieldFoldersResponse'
              examples:
                Get Custom Field Folders:
                  summary: Get Custom Field Folders
                  value:
                    page: 1
                    page_size: 10
                    total: 1
                    folders:
                      - id: 123
                        name: "My Folder"
                        num_custom_fields: 1
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/searches:
    get:
      tags:
        - Explore+ Assets
      summary: List all searches.
      description: List all searches.
      parameters:
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          description: "The number of searches to return per request. Min: 1, Max: 100"
          schema:
            maximum: 100
            minimum: 1
            type: integer
            default: 10
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
        - name: folder_id
          description: Set the folder to search by
          in: query
          schema:
            type: string
        - name: show_hidden
          description: Set to true to include searches within hidden folders
          in: query
          schema:
            type: boolean
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searches.MultiSearchResponse'
              examples:
                List Searches:
                  summary: List Searches
                  value:
                    page: 1
                    page_size: 10
                    total: 1
                    searches:
                      - id: 123
                        folder_id: null
                        name: "My Search"
                        description: "my first search"
                        color: "#FFFFFF"
                        created: "2025-01-01T00:00:00Z"
                        updated: "2025-01-01T00:00:00Z"
                        query:
                          case_sensitivity: "yes"
                          boolean: "honda OR mazda"
                          type: "boolean"
                        data_collection: false
                        data_collection_updated: "2025-01-01T00:00:00Z"
                        hidden: false
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    post:
      tags:
        - Explore+ Assets
      summary: Create a new search.
      description: Create a new search.
      parameters:
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Search
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/searches.CreateSearchRequestInput'
            examples:
              Create Boolean Search:
                summary: Create a Boolean Search
                value:
                  search:
                    folder_id: null
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      case_sensitivity: "yes"
                      boolean: "honda OR mazda"
                      type: "boolean"
                    data_collection: false
              Create Keyword Search:
                summary: Create a Keyword Search
                value:
                  search:
                    folder_id: null
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      case_sensitivity: "yes"
                      all_keywords:
                        - "honda"
                      any_keywords:
                        - "mazda"
                      not_keywords:
                        - "nissan"
                      type: "keyword"
                    data_collection: false
              Create Combined Search:
                summary: Create a Combined Search
                value:
                  search:
                    folder_id: 123
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      all_searches:
                        - id: 123
                          type: "SEARCH"
                      any_searches:
                        - id: 456
                          type: "SEARCH"
                      not_searches:
                        - id: 789
                          type: "SEARCH"
                      type: "combined"
                    data_collection: false
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searches.SingleSearchResponse'
              examples:
                Create Boolean Search:
                  summary: Create a Boolean Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        boolean: "honda OR mazda"
                        type: "boolean"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Create Keyword Search:
                  summary: Create a Keyword Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Create Combined Search:
                  summary: Create a Combined Search
                  value:
                    search:
                      id: 123
                      folder_id: 123
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        all_searches:
                          - id: 123
                            type: "SEARCH"
                        any_searches:
                          - id: 456
                            type: "SEARCH"
                        not_searches:
                          - id: 789
                            type: "SEARCH"
                        type: "combined"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/searches/{search_id}:
    get:
      tags:
        - Explore+ Assets
      summary: Fetch a given search.
      description: Fetch a given search.
      parameters:
        - name: search_id
          in: path
          description: Search ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searches.SingleSearchResponse'
              examples:
                Get Boolean Search:
                  summary: Get a Boolean Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        boolean: "honda OR mazda"
                        type: "boolean"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Get Keyword Search:
                  summary: Get a Keyword Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Get Combined Search:
                  summary: Get a Combined Search
                  value:
                    search:
                      id: 123
                      folder_id: 123
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        all_searches:
                          - id: 123
                            type: "SEARCH"
                        any_searches:
                          - id: 456
                            type: "SEARCH"
                        not_searches:
                          - id: 789
                            type: "SEARCH"
                        type: "combined"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    put:
      tags:
        - Explore+ Assets
      summary: Update a given search.
      description: Update a given search.
      parameters:
        - name: search_id
          in: path
          description: Search ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Search
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/searches.CreateSearchRequestInput'
            examples:
              Update Boolean Search:
                summary: Update a Boolean Search
                value:
                  search:
                    folder_id: null
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      case_sensitivity: "yes"
                      boolean: "honda OR mazda"
                      type: "boolean"
                    data_collection: false
              Update Keyword Search:
                summary: Update a Keyword Search
                value:
                  search:
                    folder_id: null
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      case_sensitivity: "yes"
                      all_keywords:
                        - "honda"
                      any_keywords:
                        - "mazda"
                      not_keywords:
                        - "nissan"
                      type: "keyword"
                    data_collection: false
              Update Combined Search:
                summary: Update a Combined Search
                value:
                  search:
                    folder_id: 123
                    name: "My Search"
                    description: "my first search"
                    color: "#FFFFFF"
                    query:
                      all_searches:
                        - id: 123
                          type: "SEARCH"
                      any_searches:
                        - id: 456
                          type: "SEARCH"
                      not_searches:
                        - id: 789
                          type: "SEARCH"
                      type: "combined"
                    data_collection: false
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searches.SingleSearchResponse'
              examples:
                Update Boolean Search:
                  summary: Update a Boolean Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        boolean: "honda OR mazda"
                        type: "boolean"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Update Keyword Search:
                  summary: Update a Keyword Search
                  value:
                    search:
                      id: 123
                      folder_id: null
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        case_sensitivity: "yes"
                        all_keywords:
                          - "honda"
                        any_keywords:
                          - "mazda"
                        not_keywords:
                          - "nissan"
                        type: "keyword"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
                Update Combined Search:
                  summary: Update a Combined Search
                  value:
                    search:
                      id: 123
                      folder_id: 123
                      name: "My Search"
                      description: "my first search"
                      color: "#FFFFFF"
                      created: "2025-01-01T00:00:00Z"
                      updated: "2025-01-01T00:00:00Z"
                      query:
                        all_searches:
                          - id: 123
                            type: "SEARCH"
                        any_searches:
                          - id: 456
                            type: "SEARCH"
                        not_searches:
                          - id: 789
                            type: "SEARCH"
                        type: "combined"
                      data_collection: false
                      data_collection_updated: "2025-01-01T00:00:00Z"
                      hidden: false
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
    delete:
      tags:
        - Explore+ Assets
      summary: Delete a given search.
      description: Delete a given search.
      parameters:
        - name: search_id
          in: path
          description: Search ID
          required: true
          schema:
            type: integer
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      responses:
        "204":
          description: No Content
          content: { }
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/assets/searches/folders:
    get:
      tags:
        - Explore+ Assets
      summary: List all search folders.
      description: List all search folders.
      parameters:
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          description: "The number of folders to return per request. Min: 1, Max: 100"
          schema:
            maximum: 100
            minimum: 1
            type: integer
            default: 10
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
        - name: show_hidden
          description: Set to true to include searches within hidden folders
          in: query
          schema:
            type: boolean
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searches.SearchFoldersResponse'
              examples:
                List Search Folders:
                  summary: List Search Folders
                  value:
                    page: 1
                    page_size: 10
                    total: 2
                    folders:
                      - id: 123
                        name: "My Search Folder"
                        color: "#FFFFFF"
                        updated: "2025-01-01T00:00:00Z"
                        num_searches: 1
                        parent: null
                        hidden: false
                      - id: 456
                        name: "My Second Search Folder"
                        color: "#FFFFFF"
                        updated: "2025-01-01T00:00:00Z"
                        num_searches: 1
                        parent: 123
                        hidden: false
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ExplorePlusAPIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/analytics/custom:
    post:
      tags:
        - Explore+ Analytics
      summary: Analyse earned data in your private index.
      description: Analyse earned data in your private index.
      parameters:
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Analytics Parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/explore_plus.CustomAnalyticsRequest'
            examples:
              Document Count:
                summary: Document Count
                value:
                  searches:
                    all:
                      - 123
                    any:
                      - 456
                    none:
                      - 789
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "document_count"
              Top Terms:
                summary: Top Terms
                value:
                  searches:
                    all:
                      - 123
                  filters:
                    countries:
                      none:
                        - gb
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "top_terms"
                    dimension: "location"
                    limit: 1
              Measure Statistics:
                summary: Measure Statistics
                value:
                  searches:
                    all:
                      - 123
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "measure_statistics"
                    measure: "engagement"
              Date Histogram:
                summary: Date Histogram
                value:
                  searches:
                    all:
                      - 123
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "date_histogram"
                    granularity: "day"
              Top Terms with Measure Statistics:
                summary: Top Terms with Measure Statistics
                value:
                  searches:
                    all:
                      - 123
                  filters:
                    countries:
                      none:
                        - gb
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  tz: "UTC"
                  analysis:
                    type: "top_terms"
                    dimension: "location"
                    limit: 1
                    analysis:
                      type: "measure_statistics"
                      measure: "engagement"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/explore_plus.CustomResponse'
              examples:
                Document Count:
                  summary: Document Count
                  value:
                    searches:
                      all:
                        - 123
                      any:
                        - 456
                      none:
                        - 789
                    start: "2025-01-01T00:00:00"
                    end: "2025-01-01T00:00:00"
                    tz: "UTC"
                    analysis:
                      type: "document_count"
                    result:
                      document_count: 123456
                Top Terms:
                  summary: Top Terms
                  value:
                    searches:
                      all:
                        - 123
                    filters:
                      countries:
                        none:
                          - gb
                    start: "2025-01-01T00:00:00"
                    end: "2025-01-01T00:00:00"
                    tz: "UTC"
                    analysis:
                      type: "top_terms"
                      dimension: "location"
                      limit: 1
                    result:
                      document_count: 123456
                      analysis:
                        - key: US
                          label: United States
                          document_count: 987
                          percentage: 12.34
                Measure Statistics:
                  summary: Measure Statistics
                  value:
                    searches:
                      all:
                        - 123
                    start: "2025-01-01T00:00:00"
                    end: "2025-01-01T00:00:00"
                    tz: "UTC"
                    analysis:
                      type: "measure_statistics"
                      measure: "engagement"
                    result:
                      document_count: 123456
                      analysis:
                        engagement:
                          sum: 987654
                Date Histogram:
                  summary: Date Histogram
                  value:
                    searches:
                      all:
                        - 123
                    start: "2025-01-01T00:00:00"
                    end: "2025-01-01T00:00:00"
                    tz: "UTC"
                    analysis:
                      type: "date_histogram"
                      granularity: "day"
                    result:
                      document_count: 123456
                      analysis:
                        - key: "2025-01-01T00:00:00Z"
                          document_count: 98
                          percentage: 12.34
                Top Terms with Measure Statistics:
                  summary: Top Terms with Measure Statistics
                  value:
                    searches:
                      all:
                        - 123
                    filters:
                      countries:
                        none:
                          - gb
                    start: "2025-01-01T00:00:00"
                    end: "2025-01-01T00:00:00"
                    tz: "UTC"
                    analysis:
                      type: "top_terms"
                      dimension: "location"
                      limit: 1
                      analysis:
                        type: "measure_statistics"
                        measure: "engagement"
                    result:
                      document_count: 123456
                      analysis:
                        - key: US
                          label: United States
                          document_count: 987
                          percentage: 12.34
                          analysis:
                            engagement:
                              sum: 987
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIError'
      security:
        - apikey: [ ]
  /v3/explore_plus/analytics/custom/catalog:
    get:
      tags:
        - Explore+ Analytics
      summary: Fetch available analytics options.
      description: Fetch available analytics options.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/explore_plus.CatalogResponse'
      security:
        - apikey: [ ]
  /v3/explore_plus/search:
    post:
      tags:
        - Explore+ Search
      summary: Search for data in your private index.
      description: Search for data in your private index.
      parameters:
        - name: workspace_id
          in: query
          description: "Set the workspace to search by. If accessing the company space,\
          \ set to `none`"
          required: true
          schema:
            type: string
        - name: company_id
          in: query
          description: Set the company to search by
          schema:
            type: string
      requestBody:
        description: Search Parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/explore_plus.ExplorePlusParameters'
            examples:
              Search with Searches:
                summary: Search for documents using saved searches
                value:
                  searches:
                    all:
                      - 123
                    any:
                      - 456
                    none:
                      - 789
                  filters:
                    countries:
                      all:
                        - gb
                  start: "2025-01-01T00:00:00"
                  end: "2025-01-01T00:00:00"
                  page: 1
                  page_size: 10
                  sort_by: "date"
                  sort_order: "desc"
                  tz: "UTC"
                  template:
                    name: "api.json"
              Search with Document IDs:
                summary: Search for documents with document IDs
                value:
                  doc_ids:
                    - "document1"
                    - "document2"
                  page: 1
                  page_size: 10
                  sort_by: "date"
                  sort_order: "desc"
                  tz: "UTC"
                  template:
                    name: "api.json"
        required: true
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/explore_plus.Response'
              examples:
                Search with Searches:
                  summary: Search for documents with saved searches
                  value:
                    documents:
                      - id: "document1"
                        opening_text: "this is a document"
                    count: 1
                Search with Document IDs:
                  summary: Search for documents with document IDs
                  value:
                    documents:
                      - id: "document1"
                        opening_text: "this is a document"
                      - id: "document2"
                        opening_test: "this is also a document"
                    count: 1
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIValidationError'
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIError'
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.APIError'
      security:
        - apikey: [ ]
  /v3/mira/chat:
    post:
      tags:
        - Mira API
      summary: Chat completion endpoint
      description: |-
        Processes chat completion requests and returns responses in streaming or non-streaming mode.
        If thread_id is provided, it will use that thread. If not, it will create a new thread or use the latest one.
        If X-Project-ID header is provided, the thread will be associated with that project for enhanced context.
        The thread ID is returned in the Thread-ID response header.
      parameters:
        - name: X-Project-ID
          in: header
          description: Project ID for thread association
          required: false
          schema:
            type: string
        - name: company_id
          in: query
          description: The ID of the company to access. If not provided, your default company will be used.
          required: false
          schema:
            type: string
      requestBody:
        description: Completion Request
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_prompt:
                  type: string
                  description: The user's prompt for the chat completion
                stream:
                  type: boolean
                  description: Whether to stream the response
                  default: false
                thread_id:
                  type: string
                  description: Optional thread ID to continue an existing conversation
              required:
                - user_prompt
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
            text/event-stream:
              schema:
                type: string
        '400':
          description: Invalid request
        '404':
          description: Thread not found
        '500':
          description: Failed to get completion
      security:
        - apikey: [ ]
  /v3/mira/responses:
    post:
      tags:
        - Mira API
      summary: Chat responses endpoint
      description: |-
        Processes chat responses requests with multiple input messages and returns responses in streaming or non-streaming mode.
        If Thread-ID header is provided, uses the existing thread; otherwise creates a new thread with all messages and passes only the last user message to Mira.
        The thread ID is returned in the Thread-ID response header.
      parameters:
        - name: Thread-ID
          in: header
          description: Optional thread ID. If provided, uses the existing thread; otherwise creates a new thread
          required: false
          schema:
            type: string
        - name: Project-ID
          in: header
          description: Optional project ID for enhanced context
          required: false
          schema:
            type: string
        - name: company_id
          in: query
          description: The ID of the company to access. If not provided, your default company will be used.
          required: false
          schema:
            type: string
      requestBody:
        description: Response Request
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                input:
                  type: array
                  description: Array of input messages
                  items:
                    type: object
                    properties:
                      role:
                        type: string
                        description: The role of the message sender
                      content:
                        type: array
                        description: Array of content items
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              description: Content type
                            text:
                              type: string
                              description: The actual text content
                stream:
                  type: boolean
                  description: Whether to stream the response
                  default: false
              required:
                - input
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
            text/event-stream:
              schema:
                type: string
        '400':
          description: Invalid request
        '500':
          description: Failed to get response
      security:
        - apikey: [ ]
  /v3/mira/projects:
    get:
      tags:
        - Mira API
      summary: List available projects
      description: |-
        Retrieve all projects available to the authenticated user with pagination support
      parameters:
        - name: page
          in: query
          description: "Page number (default: 1, min: 1)"
          required: false
          schema:
            type: integer
            minimum: 1
            default: 1
        - name: page_size
          in: query
          description: "Items per page (default: 10, min: 1, max: 100)"
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 10
        - name: sort
          in: query
          description: "Sort order: asc or desc (default: desc)"
          required: false
          schema:
            type: string
            enum: [asc, desc]
            default: desc
        - name: company_id
          in: query
          description: The ID of the company to access. If not provided, your default company will be used.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Successfully retrieved projects with pagination
          content:
            application/json:
              schema:
                type: object
                properties:
                  projects:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Unique project identifier
                        name:
                          type: string
                          description: Human-readable project name
                        share_level:
                          type: string
                          description: Access level
                        created_at:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp of project creation
                        updated_at:
                          type: string
                          format: date-time
                          description: ISO 8601 timestamp of last project update
                  pagination:
                    type: object
                    properties:
                      page:
                        type: integer
                      page_size:
                        type: integer
                      total_items:
                        type: integer
                      total_pages:
                        type: integer
        '400':
          description: Invalid query parameters
        '500':
          description: Failed to get projects
      security:
        - apikey: [ ]
components:
  schemas:
    DocModTag:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
    DocumentTagsPayload:
      type: object
      required:
        - document_ids
        - tags
      properties:
        document_ids:
          type: array
          minItems: 1
          maxItems: 100
          items:
            type: string
        tags:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/DocModTag'
    MWAPIError:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/MWAPIErrorDetails'
    RateLimitedError:
      description: RateLimitedError
      example:
        message: Service Overloaded
        errors: { }
      allOf:
        - $ref: '#/components/schemas/Errors'
        - required:
            - message
          type: object
          properties:
            message:
              type: string
          description: RateLimitedError
    SingleSearchRequest:
      required:
        - search
      type: object
      properties:
        search:
          $ref: '#/components/schemas/SearchRequestV2'
      title: Search Resource
      description: Search Resource
      additionalProperties: false
    SearchRequestV2:
      required:
        - name
        - query
      type: object
      properties:
        name:
          type: string
          description: The name associated with this search
          example: Electric cars
        query:
          $ref: '#/components/schemas/Query'
        id:
          type: integer
          example: 1024
          description: Identifier
      title: Search
      example:
        query:
          type: boolean
          filter_set: null
          case_sensitivity: false
          boolean: Tesla OR (Volvo NEAR electric)
        name: Electric cars
      description: Search
      additionalProperties: false
    Query:
      description: Query associated with a search
      oneOf:
        - $ref: '#/components/schemas/BooleanQuery'
        - $ref: '#/components/schemas/KeywordQuery'
        - $ref: '#/components/schemas/CombinedQuery'
      discriminator:
        propertyName: type
        mapping:
          boolean: '#/components/schemas/BooleanQuery'
          keyword: '#/components/schemas/KeywordQuery'
          combined: '#/components/schemas/CombinedQuery'
    BooleanQuery:
      required:
        - case_sensitivity
        - boolean
      type: object
      properties:
        filter_set:
          $ref: '#/components/schemas/FilterSet'
        case_sensitivity:
          type: string
          description: The case sensitivity for this query
          enum:
            - 'yes'
            - 'no'
            - hybrid
        boolean:
          type: string
          description: The boolean query string
    FilterSet:
      description: The optional Filter Set to apply to this search
      oneOf:
        - $ref: '#/components/schemas/SavedFilterSet'
        - $ref: '#/components/schemas/EmbeddedFilterSet'
      discriminator:
        propertyName: type
        mapping:
          saved: '#/components/schemas/SavedFilterSet'
          embedded: '#/components/schemas/EmbeddedFilterSet'
    SavedFilterSet:
      required:
        - id
      type: object
      properties:
        id:
          type: integer
          description: ID number for the Saved Filter Set
          format: int64
        name:
          type: string
          description: Name of the Saved Filter Set, is optional when referencing
            one
        subtype:
          type: string
          description: Type of Saved Filter Set, may be CUSTOM for user-created or
            QUICKPICK for meltwater-created, is optional when referencing one
          enum:
            - custom
            - quickpick
    EmbeddedFilterSet:
      type: object
    KeywordQuery:
      required:
        - case_sensitivity
      type: object
      properties:
        filter_set:
          $ref: '#/components/schemas/FilterSet'
        case_sensitivity:
          type: string
          description: The case sensitivity for this query
          enum:
            - 'yes'
            - 'no'
            - hybrid
        not_keywords:
          type: array
          items:
            type: string
          description: None of these keywords should match
        any_keywords:
          type: array
          items:
            type: string
          description: At least one of these keywords must match
        all_keywords:
          type: array
          items:
            type: string
          description: All of these keywords must match
    CombinedQuery:
      type: object
      properties:
        filter_set:
          $ref: '#/components/schemas/FilterSet'
        not_searches:
          type: array
          items:
            type: integer
            format: int64
          description: None of these searches should match
        any_searches:
          type: array
          items:
            type: integer
            format: int64
          description: At least one of these searches must match
        all_searches:
          type: array
          items:
            type: integer
            format: int64
          description: All of these searches must match
    Errors:
      required:
        - type
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorDetails'
          description: List of problems with the request
        type:
          type: string
          enum:
            - NotFound
            - ServiceUnavailable
            - Unauthorized
            - ValidationFailed
      description: Errors
      discriminator:
        propertyName: type
    ErrorDetails:
      required:
        - type
        - title
        - details
      type: object
      properties:
        type:
          type: string
          description: Category of error
        title:
          type: string
          description: Title of error
        details:
          type: string
          description: Details about the error
    SingleSearch:
      required:
        - search
      type: object
      properties:
        search:
          $ref: '#/components/schemas/SearchV2'
      title: Search Resource
      description: Search Resource
      additionalProperties: false
    SearchV2:
      required:
        - id
        - name
      type: object
      properties:
        updated:
          type: string
          format: date-time
          example: '2020-08-23T08:25:56.000Z'
          description: UTC date time (in ISO-8601 format) when the search was last
            updated
        id:
          type: integer
          format: int64
          example: 1024
          description: Identifier
        name:
          type: string
          example: Electric cars
          description: Search name
        query:
          $ref: '#/components/schemas/Query'
      title: Search
      example:
        updated: '2020-08-23T08:25:56.000Z'
        query:
          type: boolean
          filter_set: null
          case_sensitivity: false
          boolean: Tesla OR (Volvo NEAR electric)
        name: Electric cars
        id: 1999
      description: Search
      additionalProperties: false
    Unit:
      type: object
    SearchListResponse:
      type: object
      properties:
        searches:
          type: array
          items:
            $ref: '#/components/schemas/SearchV2'
      title: Search List Response
      required:
        - searches
      description: Search List Response
      additionalProperties: false
    CompanyList:
      type: object
      properties:
        companies:
          type: array
          items:
            $ref: '#/components/schemas/Company'
      title: Company List
      items:
        $ref: '#/components/schemas/Company'
      description: Company List
    Company:
      required:
        - name
        - id
      type: object
      properties:
        name:
          type: string
          description: Company name
          example: Meltwater
        id:
          type: string
          description: Company unique identifier
          example: 61d07a1eb6b501051b5af3d7
      title: Company
      example:
        name: Meltwater
        id: 61d07a1eb6b501051b5af3d7
      description: Company
      additionalProperties: false
    WorkspaceList:
      type: object
      properties:
        count:
          type: integer
        workspaces:
          type: array
          items:
            $ref: '#/components/schemas/Workspace'
      title: Workspace List
      items:
        $ref: '#/components/schemas/Workspace'
      description: Workspace List
    Workspace:
      required:
        - id
        - name
        - description
        - created_at
      type: object
      properties:
        name:
          type: string
          description: Workspace name
          example: My Workspace
        id:
          type: string
          description: Unique workspace identifier
          example: 61d07a1eb6b501051b5af3d7
        description:
          type: string
          description: Workspace description
          example: "This is a super cool workspace"
        created_at:
          title: An ISO8601 date-time.
          type: string
          description: "An ISO8601 date-time, including timezone offset.\n\nThe timezone\
            \ offset is an offset in minutes from UTC."
          format: date-time
      title: Workspace
      example:
        name: My Workspace
        id: 61d07a1eb6b501051b5af3d7
      description: Company
      additionalProperties: false
    TokenList:
      type: object
      properties:
        count:
          type: integer
        tokens:
          type: array
          items:
            $ref: '#/components/schemas/Token'
      title: Token List
      description: Token List
    Token:
      required:
        - id
        - label
        - created_at
        - created_by
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique token identifier
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        label:
          type: string
          description: Token label
          example: My API Token
        created_at:
          title: An ISO8601 date-time.
          type: string
          description: "An ISO8601 date-time, including timezone offset.\n\nThe timezone\
            \ offset is an offset in minutes from UTC."
          format: date-time
        created_by:
          type: string
          description: Name of the user who created the token
          example: Alex Morgan
      title: Token
      example:
        id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        label: My API Token
        created_at: "2024-01-15T10:30:00Z"
        created_by: Alex Morgan
      description: Token
      additionalProperties: false
    TagList:
      type: object
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
      title: Tag List
      items:
        $ref: '#/components/schemas/Tag'
      description: Tag List
    Tag:
      required:
        - id
        - name
      type: object
      properties:
        id:
          type: integer
          description: Tag id
          example: 12345
        name:
          type: string
          description: Tag name
          example: My Custom Tag
      title: Tag
      example:
        id: 12345
        name: My Custom Tag
      description: Tag
      additionalProperties: false
    SearchCountResponse:
      required:
        - count
      type: object
      properties:
        count:
          $ref: '#/components/schemas/Count'
      title: Search Count
      description: Number of results for the search
      additionalProperties: false
    Count:
      required:
        - total
      type: object
      properties:
        total:
          type: integer
          description: Total count
          format: int64
          example: 901382
      description: Number of results for the search
      title: Count
      additionalProperties: false
    FilterSetList:
      type: object
      properties:
        filter_sets:
          type: array
          items:
            $ref: '#/components/schemas/FilterSet'
    CustomCategoriesList:
      type: object
      properties:
        count:
            type: integer
            description: Total count
            format: int64
            example: 12
        custom_categories:
          type: array
          items:
            $ref: '#/components/schemas/CustomCategory'
    CustomCategory:
      type: object
      properties:
        id:
          type: integer
          description: Custom category id
          format: int64
          example: 11234
        name:
          type: string
          description: Name of the custom category
          example: My Custom Category
        type:
          type: string
          description: Type of the category, can be `include` or `exclude`
          example: include
    ValidationFailed:
      required:
        - errors
        - message
      type: object
      properties:
        message:
          type: string
          description: "A message describing, in brief, the problem."
        errors:
          type: object
          additionalProperties:
            uniqueItems: true
            type: array
            items:
              type: string
              description: A description of the problem encountered on this field.
          description: "A breakdown of each problem encountered, by field."
      example:
        message: Validation Failed
        errors:
          start:
            - '''foo'' is not a valid ISO 8601 local timestamp'
          end:
            - Missing required parameter
    SummaryResponse:
      required:
        - sentiment
        - time_series
        - top_countries
        - top_languages
        - unique_authors
        - volume
      type: object
      properties:
        unique_authors:
          type: integer
          format: int64
        top_countries:
          type: array
          items:
            $ref: '#/components/schemas/CountryStats'
        sentiment:
          $ref: '#/components/schemas/Sentiments'
        top_languages:
          type: array
          items:
            $ref: '#/components/schemas/LanguageStats'
        time_series:
          type: array
          items:
            $ref: '#/components/schemas/Day'
        volume:
          $ref: '#/components/schemas/Volume'
      description: SummaryResponse
    Volume:
      required:
        - document_count
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        per_day:
          type: integer
          format: int64
        per_hour:
          type: integer
          format: int64
      description: Volume
    CountryStats:
      required:
        - country_code
        - document_count
        - percentage
      type: object
      properties:
        country_code:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: CountryStats
    TopSharedResponse:
      required:
        - document_count
        - results
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        results:
          type: array
          items:
            $ref: '#/components/schemas/Document'
      description: TopSharedResponse
    Twitter:
      type: object
      properties:
        followers:
          type: integer
          format: int64
        following:
          type: integer
          format: int64
        external_id:
          type: string
      description: Twitter
    NotFound:
      required:
        - errors
        - message
      type: object
      properties:
        message:
          type: string
          description: "A message describing, in brief, the problem."
        errors:
          type: object
          additionalProperties:
            uniqueItems: true
            type: array
            items:
              type: string
              description: A description of the problem encountered on this field.
          description: "A breakdown of each problem encountered, by field."
      example:
        message: Not Found
        errors:
          :searchId:
            - A Saved Search with that ID could not be found
    SentimentStats:
      required:
        - document_count
        - percentage
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: SentimentStats
    Entity:
      required:
        - document_count
        - entity
        - type
        - percentage
      type: object
      properties:
        entity:
          type: string
        type:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Entity
    Day:
      required:
        - date
        - document_count
        - hours
      type: object
      properties:
        date:
          title: "An ISO8601 date, excluding time and timezone/offset."
          type: string
          description: "An ISO8601 date, excluding time and timezone/offset.\n\nThe\
            \ year, month and day formatted according to ISO8601. The date\nrepresents\
            \ the local date at the timezone given in the `tz` parameter."
          format: date
        document_count:
          type: integer
          format: int64
        hours:
          type: array
          items:
            $ref: '#/components/schemas/Hour'
      description: Day
    LanguageStats:
      required:
        - document_count
        - language_code
        - percentage
      type: object
      properties:
        language_code:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: LanguageStats
    AnalyticsTag:
      required:
        - document_count
        - percentage
        - tag
      type: object
      properties:
        tag:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Tag
    AnalyticsServiceUnavailable:
      description: ServiceUnavailable
      example:
        message: Service Unavailable
        errors: { }
      allOf:
        - $ref: '#/components/schemas/Errors'
        - type: object
          properties:
            message:
              type: string
          description: ServiceUnavailable
    Hour:
      required:
        - document_count
        - timestamp
      type: object
      properties:
        timestamp:
          title: An ISO8601 date-time.
          type: string
          description: "An ISO8601 date-time, including timezone offset.\n\nThe timezone\
            \ offset is an offset in minutes from UTC."
          format: date-time
        document_count:
          type: integer
          format: int64
      description: Hour
    Result:
      required:
        - author
        - document_count
      type: object
      properties:
        author:
          $ref: '#/components/schemas/Author'
        document_count:
          type: integer
          format: int64
      description: Result
    Document:
      required:
        - author
        - shares
      type: object
      properties:
        author:
          $ref: '#/components/schemas/Author'
        url:
          type: string
        country_code:
          type: string
        shares:
          $ref: '#/components/schemas/Shares'
        language_code:
          type: string
        external_id:
          type: string
        created_at:
          title: An ISO8601 date-time.
          type: string
          description: "An ISO8601 date-time, including timezone offset.\n\nThe timezone\
            \ offset is an offset in minutes from UTC."
          format: date-time
      description: Document
    Author:
      type: object
      properties:
        username:
          type: string
        display_name:
          type: string
        twitter:
          $ref: '#/components/schemas/Twitter'
        avatar_url:
          type: string
        authority:
          type: integer
          format: int64
      description: Author
    Shares:
      type: object
      properties:
        retweets:
          type: integer
          format: int64
        likes:
          type: integer
          format: int64
      description: Shares
    Keyphrase:
      required:
        - document_count
        - keyphrase
        - percentage
      type: object
      properties:
        keyphrase:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Keyphrase
    Link:
      required:
        - document_count
        - link
        - percentage
      type: object
      properties:
        link:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Link
    Mention:
      required:
        - document_count
        - mention
        - percentage
      type: object
      properties:
        mention:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Mention
    Topic:
      required:
        - document_count
        - topic
        - sub_topics
        - percentage
      type: object
      properties:
        topic:
          type: string
        sub_topics:
          type: object
          items:
            $ref: '#/components/schemas/Topic'
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Topic
    TopTagsResponse:
      required:
        - document_count
        - tags
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AnalyticsTag'
      description: TopTagsResponse
    TopMentionsResponse:
      required:
        - document_count
        - tags
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        mentions:
          type: array
          items:
            $ref: '#/components/schemas/Mention'
      description: TopMentionsResponse
    TopTopicsResponse:
      required:
        - document_count
        - topics
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        mentions:
          type: array
          items:
            $ref: '#/components/schemas/Topic'
      description: TopTopicsResponse
    TopSharedLinksResponse:
      required:
        - document_count
        - links
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        links:
          type: array
          items:
            $ref: '#/components/schemas/Link'
      description: TopKeyphrasesResponse
    TopKeyphrasesResponse:
      required:
        - document_count
        - keyphrases
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        keyphrases:
          type: array
          items:
            $ref: '#/components/schemas/Keyphrase'
      description: TopKeyphrasesResponse
    Unauthorized:
      required:
        - message
      type: object
      properties:
        message:
          type: string
          description: "A message describing, in brief, the problem."
      example:
        message: Unauthorized
    Sentiments:
      required:
        - negative
        - neutral
        - positive
        - unknown
      type: object
      properties:
        positive:
          $ref: '#/components/schemas/SentimentStats'
        negative:
          $ref: '#/components/schemas/SentimentStats'
        neutral:
          $ref: '#/components/schemas/SentimentStats'
        unknown:
          $ref: '#/components/schemas/SentimentStats'
      description: Sentiments
    TopEntitiesResponse:
      required:
        - document_count
        - entities
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        entities:
          type: array
          items:
            $ref: '#/components/schemas/Entity'
      description: TopEntitiesResponse
    TopSourcesResponse:
      required:
        - document_count
        - sources
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        sources:
          type: array
          items:
            $ref: '#/components/schemas/Result'
      description: TopSourcesResponse
    CustomAnalyticsRequest:
      required:
        - start_date
        - end_date
        - tz
      type: object
      properties:
        start_date:
          type: string
          format: datetime
          example: '2024-03-25T00:00:00'
          description: Start date (UTC) in ISO 8601 Local standard.

            E.g. "2024-03-25T00:00:00"
        end_date:
          type: string
          format: datetime
          example: '2024-03-30T00:00:00'
          description: End date (UTC) in ISO 8601 Local standard.

            E.g. "2024-03-30T00:00:00"
        tz:
          type: string
          example: 'UTC'
        languages:
          type: array
          example: ["en"]
          description: "The languages of documents to include in the query.\n\nA primary\
                    \ language subtag from the IANA language tag registry, 'zh-Hant',\n'zh-Hans'\
                    \ or 'zz'.\n\nIn addition to two and three letter primary subtags from the\n\
                    [IANA language tag registry](https://www.w3.org/International/articles/language-tags/#language),\n\
                    the following special language codes are also supported:\n\n  * `zh-Hans`\
                    \ - for Simplified Chinese\n  * `zh-Hant` - for Traditional Chinese\n  *\
                    \ `zz` - for unknown language\n\nThis restricts the documents queried to\
                    \ include only those in a\nparticular language.\n\nIf multiple languages\
                    \ are specified, documents in any of those languages\nwill be included in\
                    \ the results."
        countries:
          type: array
          example: ["gb"]
          description: "The origin countries of documents to include in the query.\n\n\
                    The two-letter ISO 3166-1 Alpha-2 country code, or 'ZZ'.\n\nBesides the\
                    \ two letter [ISO 3166-1 Alpha-2 country code](https://www.iso.org/obp/ui/#search/code/)\n\
                    of a country, 'ZZ' may be used to indicate 'Unknown country of origin'.\n\
                    \nThis restricts the documents queried to include only those that\noriginated\
                    \ from a particular country.\n\nIf multiple countries are specified, documents\
                    \ that originated from any\nof those countries will be included in results.\n\
                    \nDocuments that originated in some countries may be restricted from your\n\
                    queries automatically, based on your jurisdiction and entitlements."
        sources:
          type: array
          example: ["x"]
          description: "The origin sources of documents to include in the query. This restricts\
                    the documents queried to include only those that originated from these selected sources.\
                    \n\nIf multiple sources are selected, documents from any of those sources will be included in the results.\
                    \n\n*Available values*: forums, blogs, douyin, sina_weibo, twitch, facebook, wechat, news, pinterest,\
                    x, instagram, little_red_book, bilibili, youku, kakotalk, broadcast and linevoom."
        sentiments:
          type: array
          example: ["positive"]
          description: "The overall sentiment of the document to filter on.\
          \n\nIf multiple sentiments are specified, documents that match any of the sentiments will be included in the results.\
          \n\n*Available values*: positive, negative and neutral."
        analytic:
          $ref: '#/components/schemas/CustomAnalyticsRequestAnalytic'
        keywords:
          type: array
          example: ["USA","UK"]
          description: List of keywords to filter documents by.
        emojis:
          type: array
          example: ["😀","😢"]
          description: List of emojis to filter documents by.
        custom_categories:
          type: array
          example: ["1234","5678"]
          description: List of custom category IDs to filter documents by.
        filter_set:
          type: string
          example: '"4321"'
          description: ID of a filter set to apply.
        author_lists:
          type: array
          example: ["1111","2222"]
          description: List of author list IDs to filter documents by.
    CustomAnalyticsRequestAnalytic:
      required:
        - type
      type: object
      properties:
        'type':
          type: string
          example: "top_terms"
          description: "The type of analytic to query with."
          enum:
            - document_count
            - top_terms
            - count_unique
            - date_histogram
            - measure_statistics
        dimension:
          type: string
          example: "language"
          description: "The dimension to use in a `top_terms` or `count_unique` analytic type. \
           Use the `GET v3/analytics/custom/catalog` endpoint to see what dimensions are available."
        limit:
          type: number
          example: 10
          default: 10
          maximum: 100
          minimum: 1
          description: "The limit to the number of terms to return in a `top_terms` analytic type."
        measures:
          type: array
          example: ["views","estimated_views"]
          description: "The measures to use in a `measures_statistics` analytic type. \
          Use the `GET v3/analytics/custom/catalog` endpoint to see what measures are available."
        granularity:
          type: string
          example: "day"
          description: "The granularity to use in a `date_histogram` analytic type."
          enum:
            - hour
            - day
            - week
            - month
        analysis:
          $ref: '#/components/schemas/CustomAnalyticsRequestAnalytic'
    CustomAnalyticsResponse:
      type: object
      properties:
        start_date:
          type: string
          format: datetime
          example: '2024-03-25T00:00:00'
          description: "Start date used in the request"
        end_date:
          type: string
          format: datetime
          example: '2024-03-30T00:00:00'
          description: "End date used in the request"
        tz:
          type: string
          example: 'UTC'
          description: "Timezone used in the request"
        languages:
          type: array
          example: [ "en" ]
          description: "Language filters used in the request"
        countries:
          type: array
          example: [ "gb" ]
          description: "Country filters used in the request"
        sources:
          type: array
          example: [ "x" ]
          description: "Source filters used in the request"
        sentiments:
          type: array
          example: [ "positive" ]
          description: "Sentiment filters used in the request"
        search_id:
          type: number
          example: 12393
          description: "Saved Search ID used in the request"
        analytic:
          $ref: '#/components/schemas/CustomAnalyticsRequestAnalytic'
        results:
          type: object
          properties:
            document_count:
              type: number
              example: 12000
              description: "Total number of documents that matched the search and filters"
            analysis:
              oneOf:
                - type: array
                  items:
                    type: object
                    properties:
                      document_count:
                        type: number
                        example: 12345
                        description: "Number of documents that are contained in either the `date_histogram` or `top_terms` bucket"
                      percentage:
                        type: number
                        example: 30.0
                        description: "Percentage of documents compared to the parent bucket. If the analysis has no parent, then the percentage is calculated from the total document count."
                      key:
                        type: string
                        example: "EN"
                      label:
                        type: string
                        example: "English"
                        description: "Some dimensions will include extra enriched information when used in a `top_terms` analytic type"
                      change:
                        type: number
                        example: 357
                        description: "Change in number of documents from the previous date histogram timeseries bucket"
                      analysis:
                        type: object
                        description: "Any nested analysis is contained in the buckets of the parent analysis"
                        additionalProperties: {}
                    additionalProperties: {}
                - type: number
                  example: 12345
                  description: "For analytic types (eg. `count_unique`) that don't involve buckets or statistic breakdowns, only the result is returned."
      example:
        start_date: "2024-01-01T00:00:00"
        end_date: "2024-01-10T00:00:00"
        tz: "UTC"
        analysis:
          type: "document_count"
        results:
          document_count: 123456
    CustomAnalyticsCatalogResponse:
      type: object
      properties:
        dimensions:
          type: array
          items:
            type: string
          description: "All dimensions able to be used in `top_terms` and `count_unique` analytics"
        measures:
          type: array
          items:
            type: string
          description: "All measures able to be used in `measure_statistics` analytics"
        types:
          type: array
          items:
            type: string
          description: "All analytic types that can be used"
      example:
        dimensions:
          - "keyphrase"
          - "language"
        measures:
          - "engagement"
          - "views"
        types:
          - "document_count"
          - "top_terms"
          - "date_histogram"
          - "measure_statistics"
          - "count_unique"
    ServiceUnavailable:
      type: object
      title: Service Unavailable
      properties:
        errors:
          type: array
          items:
            type: object
            title: Error object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: SEARCH
            title: Service unavailable
            details: Temporarily unable to handle the request, try again later
      description: Service Unavailable
    SearchId:
      type: integer
    SearchDetails:
      type: object
      title: Search details
      required:
        - name
        - id
      properties:
        name:
          type: string
          example: Elections
          description: Search name
        id:
          type: integer
          example: 123
          description: Search id
      additionalProperties: false
    CustomCategoriesDetails:
      type: object
      title: Custom categories details
      required:
        - name
        - id
        - type
      properties:
        name:
          type: string
          example: My Category
          description: Category name
        id:
          type: integer
          example: 321
          description: Category ID
        type:
          type: string
          example: include
          description: Category type
      additionalProperties: false
    CustomCategoriesRequestDetails:
      type: object
      title: Custom categories details
      required:
        - ids
      properties:
        ids:
          type: array
          items:
            type: integer
          description: List of custom category ids
        filter:
          type: boolean
          description: Whether to include selected custom categories as filters
    CustomCategoriesResponseDetails:
      type: object
      title: Custom categories details
      properties:
        ids:
          type: array
          items:
            $ref: '#/components/schemas/CustomCategoriesDetails'
        filter:
          type: boolean
          description: Whether to include selected custom categories as filters
    RecurringExportResult:
      type: object
      title: Recurring export
      required:
        - searches
        - company_name
        - id
      properties:
        window_weekday:
          type: integer
          description: 'An integer representation of what day of the week the export
            window starts. Integer values are: Monday=1, Tuesday=2, Wednesday=3, Thursday=4,
            Friday=5, Saturday=6, Sunday=7 Defaults to 1'
          default: 1
        window_time_unit:
          type: string
          enum:
            - DAY
            - WEEK
            - MONTH
          description: Window Time Unit. The time unit the export window represents.
            Defaults to "DAY"
          default: DAY
        window_time:
          type: string
          description: Window Time. The time of day the export window begins. Defaults to "00:00:00"
          default: "00:00:00"
        window_size:
          type: integer
          description: Window size. The number of 'window_time_unit's the export window
            covers. Defaults to 1
          default: 1
        window_monthday:
          type: integer
          description: An integer representation of what day of the month the export
            window starts. Integer values 1-28 represent the day of the month e.g.
            1 represents 1st, 2 represents the 2nd, etc. Integer value 0 represents
            the last day of the month. Defaults to 1
          default: 1
        sample:
          $ref: "#/components/schemas/SampleConfiguration"
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
        updated_at:
          type: string
          description: The datetime the export was last updated
        timezone:
          type: string
          description: Timezone for window_time field. Must be a valid timezone in
            the IANA database. Defaults to "Etc/UTC"
          default: Etc/UTC
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: List of tag names used for the export
        status_reason:
          type: string
          description: Optional explanation for current status
        status:
          type: string
          enum:
            - PENDING
            - ACTIVE
            - CANCELLED
          description: Current status of the recurring export
        searches:
          type: array
          items:
            $ref: '#/components/schemas/SearchDetails'
          description: List of searches used for the export
        next_run_date:
          type: string
          description: Next Run Date - the datetime on which your export refresh will
            start.
        inserted_at:
          type: string
          description: The datetime the export was created
        id:
          type: integer
          description: ID of the export
        data_url:
          type: string
          description: The URL at which the export data can be retrieved
        company_name:
          type: string
          description: Company the export belongs to
        format:
          type: string
          description: The selected output format for the export
          enum: [ JSON, CSV ]
        custom_categories:
          $ref: '#/components/schemas/CustomCategoriesResponseDetails'
    RecurringExportResponse:
      type: object
      title: Recurring export Response
      required:
        - recurring_export
      properties:
        recurring_export:
          $ref: '#/components/schemas/RecurringExportResult'
      description: Recurring export Response
      additionalProperties: false
    RecurringExportShowResult:
      type: object
      title: Recurring export
      required:
        - searches
        - company_name
        - id
      properties:
        window_weekday:
          type: integer
          description: 'An integer representation of what day of the week the export
            window starts. Integer values are: Monday=1, Tuesday=2, Wednesday=3, Thursday=4,
            Friday=5, Saturday=6, Sunday=7 Defaults to 1'
          default: 1
        window_time_unit:
          type: string
          enum:
            - DAY
            - WEEK
            - MONTH
          description: Window Time Unit. The time unit the export window represents.
            Defaults to "DAY"
          default: DAY
        window_time:
          type: string
          description: Window Time. The time of day the export window begins. Defaults to "00:00:00"
          default: "00:00:00"
        window_size:
          type: integer
          description: Window size. The number of 'window_time_unit's the export window
            covers. Defaults to 1
          default: 1
        window_monthday:
          type: integer
          description: An integer representation of what day of the month the export
            window starts. Integer values 1-28 represent the day of the month e.g.
            1 represents 1st, 2 represents the 2nd, etc. Integer value 0 represents
            the last day of the month. Defaults to 1
          default: 1
        sample:
          $ref: "#/components/schemas/SampleConfiguration"
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
        updated_at:
          type: string
          description: The datetime the export was last updated
        timezone:
          type: string
          description: Timezone for window_time field. Must be a valid timezone in
            the IANA database. Defaults to "Etc/UTC"
          default: Etc/UTC
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: List of tag names used for the export
        status_reason:
          type: string
          description: Optional explanation for current status
        status:
          type: string
          enum:
            - PENDING
            - ACTIVE
            - CANCELLED
          description: Current status of the recurring export
        searches:
          type: array
          items:
            $ref: '#/components/schemas/SearchDetails'
          description: List of searches used for the export
        next_run_date:
          type: string
          description: Next Run Date - the datetime on which your export refresh will
            start.
        inserted_at:
          type: string
          description: The datetime the export was created
        id:
          type: integer
          description: ID of the export
        data_url:
          type: string
          description: The URL at which the export data can be retrieved
        company_name:
          type: string
          description: Company the export belongs to
        format:
          type: string
          description: The selected output format for the export
          enum: [ JSON, CSV ]
        custom_categories:
          $ref: '#/components/schemas/CustomCategoriesResponseDetails'
        previous_runs:
          type: array
          items:
            $ref: '#/components/schemas/RecurringExportPreviousRuns'
          description: List of previous runs for the recurring export
    RecurringExportShowResponse:
      type: object
      title: Recurring export Response
      required:
        - recurring_export
      properties:
        recurring_export:
          $ref: '#/components/schemas/RecurringExportShowResult'
      description: Recurring export Response
      additionalProperties: false
    RecurringExportPreviousRuns:
        type: object
        title: Recurring export previous runs
        properties:
          status:
            type: string
            enum:
              - PENDING
              - FINISHED
              - CANCELLED
              - EXPIRED
          start_date:
            type: string
            format: datetime
            example: '2020-03-25T00:00:00.000000Z'
            description: Start date of the export run (UTC) in ISO 8601 format
          end_date:
            type: string
            format: datetime
            example: '2020-03-29T23:59:59.000000Z'
            description: End date of the export run (UTC) in ISO 8601 format
          inserted_at:
            type: string
            description: The datetime the run was created
            example: '2020-03-25T00:00:00.000000'
          updated_at:
            type: string
            description: The datetime the export was last updated
            example: '2020-03-25T00:00:00.000000'
        description: Recurring export previous runs
        additionalProperties: false
    RecurringExportRequest:
      type: object
      title: Recurring export request
      properties:
        recurring_export:
          $ref: '#/components/schemas/RecurringExport'
      description: POST body for creating a recurring export
    RecurringExportListResponse:
      type: object
      title: Recurring export list response
      required:
        - recurring_exports
      properties:
        recurring_exports:
          $ref: '#/components/schemas/RecurringExportList'
      description: Recurring export list response
      additionalProperties: false
    RecurringExportList:
      type: array
      title: Results
      items:
        $ref: '#/components/schemas/RecurringExportResult'
      description: A collection of recurring export results
    RecurringExport:
      type: object
      title: Recurring export
      required:
        - search_ids
      properties:
        window_weekday:
          type: integer
          description: 'An integer representation of what day of the week the export
            window starts. Integer values are: Monday=1, Tuesday=2, Wednesday=3, Thursday=4,
            Friday=5, Saturday=6, Sunday=7 Defaults to 1'
          default: 1
        window_time_unit:
          type: string
          enum:
            - DAY
            - WEEK
            - MONTH
          description: Window Time Unit. The time unit the export window represents.
            Defaults to "DAY"
          default: DAY
        window_time:
          type: string
          description: Window Time. The time of day the export window begins. Defaults to "00:00:00"
          default: "00:00:00"
        window_size:
          type: integer
          description: Window size. The number of 'window_time_unit's the export window
            covers Defaults to 1
          default: 1
        window_monthday:
          type: integer
          description: An integer representation of what day of the month the export
            window starts. Integer values 1-28 represent the day of the month e.g.
            1 represents 1st, 2 represents the 2nd, etc. Integer value 0 represents
            the last day of the month. Defaults to 1
          default: 1
        timezone:
          type: string
          description: Timezone for window_time field. Must be a valid timezone in
            the IANA database. Defaults to "Etc/UTC"
          default: Etc/UTC
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          example:
            - tag
          description: List of tag names
        search_ids:
          type: array
          items:
            $ref: '#/components/schemas/SearchId'
          example:
            - 123
          description: List of search ids
        template:
          $ref: '#/components/schemas/TemplateConfiguration'
        sample:
          $ref: '#/components/schemas/SampleConfiguration'
        format:
          type: string
          description: The selected output format for the export
          enum: [ JSON, CSV ]
        custom_categories:
          $ref: '#/components/schemas/CustomCategoriesRequestDetails'
      example:
        window_time_unit: DAY
        window_time: "00:00:00"
        window_size: 1
        timezone: Etc/UTC
        tags:
          - tag
        search_ids:
          - 123
        sample:
          count: 1200
          percentage: 25.0
        template:
          name: legacy
        format: JSON
        custom_categories:
          ids:
            - 123
          filter: true
      description: A recurring export
    OneTimeExportResult:
      type: object
      title: One-time export
      required:
        - end_date
        - start_date
        - searches
        - company_name
        - id
      properties:
        updated_at:
          type: string
          description: The datetime the export was last updated
          example: '2020-03-25T00:00:00.000000'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: List of tag names used for the export
        status_reason:
          type: string
          description: Optional explanation for current status
        status:
          type: string
          enum:
            - PENDING
            - FINISHED
            - CANCELLED
            - EXPIRED
          description: Current status of the one-time export
        start_date:
          type: string
          format: datetime
          example: '2020-03-25T00:00:00.000000Z'
          description: Start date of the export (UTC) in ISO 8601 format
        searches:
          type: array
          items:
            $ref: '#/components/schemas/SearchDetails'
          description: List of searches used for the export
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
        sample:
          $ref: "#/components/schemas/SampleConfiguration"
        inserted_at:
          type: string
          description: The datetime the export was created
          example: '2020-03-25T00:00:00.000000'
        id:
          type: integer
          description: ID of the export
        end_date:
          type: string
          format: datetime
          example: '2020-03-29T23:59:59.000000Z'
          description: End date of the export (UTC) in ISO 8601 format
        data_url:
          type: string
          description: The URL at which the export data can be retrieved
          example: 'https://downloads.exports.meltwater.com/v1/one-time/12345?data_key=abcdef0123456789'
        company_name:
          type: string
          description: Company the export belongs to
        format:
          type: string
          description: The selected output format for the export
          enum: [ JSON, CSV ]
        custom_categories:
          $ref: '#/components/schemas/CustomCategoriesResponseDetails'
    OneTimeExportResponse:
      type: object
      title: One-time export Response
      required:
        - onetime_export
      properties:
        onetime_export:
          $ref: '#/components/schemas/OneTimeExportResult'
      description: One-time export Response
      additionalProperties: false
    OneTimeExportRequest:
      type: object
      title: One-time export request
      properties:
        onetime_export:
          $ref: '#/components/schemas/OneTimeExport'
      description: POST body for creating a one-time export
    OneTimeExportListResponse:
      type: object
      title: One-time export list response
      required:
        - onetime_exports
      properties:
        onetime_exports:
          $ref: '#/components/schemas/OneTimeExportList'
      description: One-time export list response
      additionalProperties: false
    OneTimeExportList:
      type: array
      title: Results
      items:
        $ref: '#/components/schemas/OneTimeExportResult'
      description: A collection of one-time export results
    OneTimeExport:
      type: object
      title: One-time export
      required:
        - end_date
        - start_date
        - search_ids
      properties:
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          example:
            - tag
          description: List of tag names
        start_date:
          type: string
          format: datetime
          example: '2020-03-25T00:00:00Z'
          description: Start date (UTC) in ISO 8601 standard.

            E.g. "2020-03-25T00:00:00Z"
        search_ids:
          type: array
          items:
            $ref: '#/components/schemas/SearchId'
          example:
            - 123
          description: List of search ids
        end_date:
          type: string
          format: datetime
          example: '2020-03-29T23:59:59Z'
          description: End date (UTC) in ISO 8601 standard.

            E.g. "2020-03-29T23:59:59Z"
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
        sample:
          $ref: "#/components/schemas/SampleConfiguration"
        format:
          type: string
          description: The selected output format for the export
          enum: [ JSON, CSV ]
        custom_categories:
          $ref: '#/components/schemas/CustomCategoriesRequestDetails'
      example:
        tags:
          - tag
        start_date: '2020-03-25T00:00:00Z'
        search_ids:
          - 123
        end_date: '2020-03-29T23:59:59Z'
        template:
          name: legacy
        sample:
          count: 10000
          percentage: 10.0
        format: "CSV"
        custom_categories:
          ids:
            - 123
          filter: true
      description: A one-time export
    TemplateConfiguration:
      type: object
      title: Template Configuration
      properties:
        name:
          type: string
          example: "legacy"
          description: The name of the template being requested
    SearchRequest:
      required:
        - tz
      type: object
      properties:
        countries:
          type: array
          example:
            - gb
            - us
          items:
            type: string
        end:
          type: string
          example: '2021-09-28T00:00:00'
        languages:
          type: array
          example:
            - en
            - fr
          items:
            type: string
        page:
          maximum: 10
          type: integer
          example: 1
        page_size:
          maximum: 100
          minimum: 0
          type: integer
          example: 10
        sentiments:
          type: array
          example:
            - positive
            - negative
          items:
            type: string
        sort_by:
          type: string
          example: date
          enum:
            - date
            - country
            - sentiment
            - language
            - title
            - reach
            - relevance
            - engagement
            - social_echo
            - prominence
            - views
        sort_order:
          type: string
          example: desc
          enum:
            - asc
            - desc
        sources:
          type: array
          example:
            - x
            - news
            - broadcast
          items:
            type: string
        start:
          type: string
          example: '2021-09-27T00:00:00'
        template:
          $ref: '#/components/schemas/TemplateConfiguration'
        tz:
          type: string
          example: Europe/London
        keywords:
          type: array
          example: ["USA","UK"]
          description: List of keywords to filter documents by.
        emojis:
          type: array
          example: ["😀","😢"]
          description: List of emojis to filter documents by.
        custom_categories:
          type: array
          example: ["1234","5678"]
          description: List of custom category IDs to filter documents by.
        filter_set:
          type: string
          example: '"4321"'
          description: ID of a filter set to apply.
        author_lists:
          type: array
          example: ["1111","2222"]
          description: List of author list IDs to filter documents by.
    SearchResponse:
      required:
        - tz
      type: object
      properties:
        countries:
          type: array
          example:
            - gb
            - us
          items:
            type: string
        end:
          type: string
          example: '2021-09-28T00:00:00'
        languages:
          type: array
          example:
            - en
            - fr
          items:
            type: string
        page:
          maximum: 10
          type: integer
          example: 1
        page_size:
          maximum: 100
          minimum: 0
          type: integer
          example: 10
        result:
          $ref: '#/components/schemas/DocumentResponse'
        search_id:
          type: integer
          example: 12345
        sentiments:
          type: array
          example:
            - positive
            - negative
          items:
            type: string
        sort_by:
          type: string
          example: date
          enum:
            - date
            - country
            - sentiment
            - language
            - title
            - reach
            - relevance
            - engagement
            - social_echo
            - prominence
            - views
        sort_order:
          type: string
          example: desc
          enum:
            - asc
            - desc
        sources:
          type: array
          example:
            - x
            - news
          items:
            type: string
        start:
          type: string
          example: '2021-09-27T00:00:00'
        template:
          $ref: '#/components/schemas/TemplateConfiguration'
        tz:
          type: string
          example: Europe/London
    DocumentResponse:
      type: object
      properties:
        document_count:
          type: integer
          example: 100
        documents:
          type: array
          items:
            type: object
            example:
              id: 123abc123
              opening_text: "This is a document ..."
    SampleConfiguration:
      type: object
      title: Sample Configuration
      properties:
        count:
          type: integer
          example: 1200
          description: Maximum number of documents for the export, max value 2 million docs
        percentage:
          type: number
          format: double
          example: 50.0
          description: Percentage of documents for the export
    ValidationMetadata:
      type: object
      title: Metadata
      required:
        - field
      properties:
        validation:
          type: string
          example: complexity
          enum:
            - syntax
            - complexity
            - length
            - cast
            - inclusion
            - required
            - content_type
          description: The cause of the validation error
        field:
          type: string
          example: boolean
          description: Name of the field that failed its validation checks
      description: Metadata for the error
      additionalProperties: true
    UnprocessableEntityCompanyId:
      type: object
      title: Invalid company id
      properties:
        errors:
          type: array
          items:
            type: object
            title: Validation error
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              meta:
                $ref: '#/components/schemas/ValidationMetadata'
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: VALIDATION
            title: 'Validation error for field: company_id'
            meta:
              field: company_id
            details: Company id is expected to contain alphanumeric characters only
      description: Invalid company id
    MissingResourceResponse:
      type: object
      title: Unknown resource
      properties:
        errors:
          type: array
          items:
            type: object
            title: Error object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: SEARCH
            title: Unknown search
            details: The search id (123) you provided is unknown
      description: Unknown resource
    InvalidPermissionsResponse:
      type: object
      title: Invalid Permissions
      properties:
        errors:
          type: array
          items:
            type: object
            title: Error object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: SEARCH
            title: Missing company permissions
            details: You do not have enough permissions to manage searches for the given company
      description: Invalid Permissions
    UnauthorizedResponse:
      type: object
      title: Unauthorized request
      properties:
        errors:
          type: array
          items:
            type: object
            title: Error object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: "Validation error for field: type"
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: AUTH
            title: Unauthorized
            details: Invalid or expired authorization header
      description: Unauthorized request
    InternalServerErrorResponse:
      type: object
      title: Internal Server error
      properties:
        errors:
          type: array
          items:
            type: object
            title: Error object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: INTERNAL
            title: Internal Server error
            details: Something went wrong behind the scenes...
      description: Internal Server error
    TopLocationsResponse:
      required:
        - document_count
        - locations
      type: object
      properties:
        document_count:
          type: integer
          format: int64
        locations:
          type: array
          items:
            $ref: '#/components/schemas/Location'
      description: TopLocationsResponse
    Location:
      required:
        - document_count
        - location_id
        - location_name
        - percentage
      type: object
      properties:
        location_name:
          type: string
        location_id:
          type: string
        document_count:
          type: integer
          format: int64
        percentage:
          type: number
          format: double
      description: Location
    UsageInternalErrorResponse:
      type: object
      properties:
        message:
          type: string
    UsageCount:
      type: object
      properties:
        count:
          type: number
    DocumentMetricsTimeFrame:
      type: object
      properties:
        count:
          type: number
        timestamp:
          type: string
    MetricsTimeSeries:
      type: object
      properties:
        count:
          type: number
        metric:
          type: string
          enum:
            - export_count
            - document_count
        period:
          type: string
          enum:
            - 24hours
            - 7days
            - 30days
            - 12months
        feature:
          type: string
          enum:
            - streaming
            - exports
        time_series:
          type: array
          items:
            $ref: '#/components/schemas/DocumentMetricsTimeFrame'
        units:
          type: string
          enum:
            - hour
            - day
            - month
    Functions:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/UsageCount'
    HttpCallsTimeFrame:
      type: object
      properties:
        calls:
          $ref: '#/components/schemas/Versions'
        timestamp:
          type: string
    HttpRequestsTimeSeries:
      type: object
      properties:
        count:
          type: number
        time_series:
          type: array
          items:
            $ref: '#/components/schemas/HttpCallsTimeFrame'
        units:
          type: string
          enum:
            - hour
            - day
            - month
    Features:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/Functions'
    Versions:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/Features'
    Error:
      type: object
      properties:
        message:
          type: string
    ValidationError:
      type: object
      properties:
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        message:
          type: string
    MWAPIErrorDetails:
      type: object
      properties:
        type:
          type: string
        title:
          type: string
        details:
          type: string
    accounts.Response:
      required:
        - accounts
        - count
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/social_accounts.Connection'
        count:
          type: integer
    analytics.InsightBreakdownValue:
      required:
        - key
        - value
      type: object
      properties:
        key:
          type: string
        key_label:
          type: string
        value:
          type: number
    analytics.InsightHeatmapValue:
      required:
        - hour
        - value
      type: object
      properties:
        hour:
          type: integer
        value:
          type: number
    analytics.InsightNestedBreakdownValue:
      required:
        - key
        - subkey
        - value
      type: object
      properties:
        key:
          type: string
        subkey:
          type: string
        value:
          type: number
    breakdown.AccountNumericMetrics:
      required:
        - daily_values
        - id
        - name
        - source
        - username
      type: object
      properties:
        daily_values:
          type: array
          items:
            $ref: '#/components/schemas/breakdown.DailyValues'
        id:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    breakdown.DailyValues:
      required:
        - date
      type: object
      properties:
        date:
          type: string
        demographics_audience_city:
          $ref: '#/components/schemas/analytics.InsightBreakdownValue'
        demographics_audience_country:
          $ref: '#/components/schemas/analytics.InsightBreakdownValue'
    breakdown.MetricsResponse:
      required:
        - accounts
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/breakdown.AccountNumericMetrics'
    heatmap.AccountNumericMetrics:
      required:
        - daily_values
        - id
        - name
        - source
        - username
      type: object
      properties:
        daily_values:
          type: array
          items:
            $ref: '#/components/schemas/heatmap.DailyValues'
        id:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    heatmap.DailyValues:
      required:
        - date
      type: object
      properties:
        date:
          type: string
        page_fans_heatmap:
          $ref: '#/components/schemas/analytics.InsightHeatmapValue'
    heatmap.MetricsResponse:
      required:
        - accounts
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/heatmap.AccountNumericMetrics'
    lib.Metric:
      type: object
      properties:
        description:
          type: string
        metric:
          type: string
        name:
          type: string
        type:
          type: string
    lib.SupportedSource:
      type: object
      properties:
        account_metrics:
          type: array
          items:
            $ref: '#/components/schemas/lib.Metric'
        name:
          type: string
        post_metrics:
          type: array
          items:
            $ref: '#/components/schemas/lib.Metric'
        source:
          type: string
    nested_breakdown.AccountNumericMetrics:
      required:
        - daily_values
        - id
        - name
        - source
        - username
      type: object
      properties:
        daily_values:
          type: array
          items:
            $ref: '#/components/schemas/nested_breakdown.DailyValues'
        id:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    nested_breakdown.DailyValues:
      required:
        - date
      type: object
      properties:
        date:
          type: string
        demographics_gender_age:
          $ref: '#/components/schemas/analytics.InsightNestedBreakdownValue'
    nested_breakdown.MetricsResponse:
      required:
        - accounts
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/nested_breakdown.AccountNumericMetrics'
    numeric.AccountNumericMetrics:
      required:
        - daily_values
        - id
        - name
        - source
        - username
      type: object
      properties:
        daily_values:
          type: array
          items:
            $ref: '#/components/schemas/numeric.DailyValues'
        id:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    numeric.DailyValues:
      required:
        - date
      type: object
      properties:
        date:
          type: string
        follower_count:
          type: integer
        impressions:
          type: integer
        page_fan_removes:
          type: integer
        page_fans:
          type: integer
        page_fans_ads:
          type: integer
        page_impressions:
          type: integer
        page_impressions_organic:
          type: integer
        page_impressions_paid:
          type: integer
        page_post_engagements:
          type: integer
        page_vide_views:
          type: integer
        profile_views:
          type: integer
        total_followers_counts:
          type: integer
        website_clicks:
          type: integer
    numeric.MetricsResponse:
      required:
        - accounts
      type: object
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/numeric.AccountNumericMetrics'
    posts.Account:
      required:
        - id
        - name
        - source
        - username
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    posts.Post:
      required:
        - account
        - content
        - created_at
        - media_url
        - metrics
        - post_id
        - post_type
        - post_subtype
        - tags
        - url
      type: object
      properties:
        account:
          $ref: '#/components/schemas/posts.Account'
        content:
          type: string
        created_at:
          type: string
        media_url:
          type: string
        metrics:
          $ref: '#/components/schemas/posts.PostMetrics'
        post_id:
          type: string
        post_type:
          type: string
        post_subtype:
          type: string
        tags:
          type: array
          example:
            - "My Tag"
            - "My Other Tag"
        url:
          type: string
    posts.PostMetrics:
      required:
        - comments_count
        - engagement
        - engagement_rate
        - followers_count_engagement_rate
        - impressions
        - like_count
        - page_fans_engagement_rate
        - post_clicks
        - post_clicks_unique
        - post_engaged_users
        - post_impressions
        - post_impressions_organic
        - post_impressions_organic_unique
        - post_impressions_paid
        - post_impressions_paid_unique
        - post_impressions_unique
        - post_reactions_anger_total
        - post_reactions_haha_total
        - post_reactions_like_total
        - post_reactions_love_total
        - post_reactions_sorry_total
        - post_reactions_wow_total
        - post_video_avg_time_watched
        - post_video_view_time
        - post_video_views
        - post_video_views_organic
        - post_video_views_paid
        - reach
        - reactions_count
        - saved
        - shares_count
        - video_views
      type: object
      properties:
        comments_count:
          type: integer
        engagement:
          type: integer
        engagement_rate:
          type: number
        followers_count_engagement_rate:
          type: number
        impressions:
          type: integer
        like_count:
          type: integer
        page_fans_engagement_rate:
          type: number
        post_clicks:
          type: integer
        post_clicks_unique:
          type: integer
        post_engaged_users:
          type: integer
        post_impressions:
          type: integer
        post_impressions_organic:
          type: integer
        post_impressions_organic_unique:
          type: integer
        post_impressions_paid:
          type: integer
        post_impressions_paid_unique:
          type: integer
        post_impressions_unique:
          type: integer
        post_reactions_anger_total:
          type: integer
        post_reactions_haha_total:
          type: integer
        post_reactions_like_total:
          type: integer
        post_reactions_love_total:
          type: integer
        post_reactions_sorry_total:
          type: integer
        post_reactions_wow_total:
          type: integer
        post_video_avg_time_watched:
          type: integer
        post_video_view_time:
          type: integer
        post_video_views:
          type: integer
        post_video_views_organic:
          type: integer
        post_video_views_paid:
          type: integer
        reach:
          type: integer
        reactions_count:
          type: integer
        saved:
          type: integer
        shares_count:
          type: integer
        video_views:
          type: integer
    posts.TopPostsResponse:
      required:
        - count
        - page
        - page_size
        - posts
      type: object
      properties:
        count:
          type: integer
        page:
          type: integer
        page_size:
          type: integer
        posts:
          type: array
          items:
            $ref: '#/components/schemas/posts.Post'
    social_accounts.Connection:
      required:
        - id
        - logo
        - name
        - source
        - username
      type: object
      properties:
        id:
          type: string
        logo:
          type: string
        name:
          type: string
        source:
          type: string
        username:
          type: string
    supported_metrics.Response:
      type: object
      properties:
        sources:
          type: array
          items:
            $ref: '#/components/schemas/lib.SupportedSource'
    HooksCollection:
      type: object
      properties:
        hooks:
          type: array
          items:
            $ref: "#/components/schemas/Hook"
      description: |-
        List all hooks. Delivers all previously generated hooks.
    Hook:
      type: object
      properties:
        search_id:
          type: integer
          format: int32
          description: Search id
        target_url:
          type: string
          description: The URL that results from the search will be posted to
        updated:
          type: string
        search_type:
          type: string
          description: The type of search the hook is for
        hook_id:
          type: string
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
        version:
          type: string
        status:
          type: string
          description: The status of the hook. Can be PENDING, ACTIVE, PAUSED or HALTED
        status_reason:
          type: string
          description: The reason for current hook status if applicable
      description: |-
        Get an individual hook.
         Retrieves an existing hook.
    postV2Hooks:
      type: object
      properties:
        target_url:
          type: string
          description: Target URL to send article results
        search_id:
          type: integer
          format: int32
          description: Search ID
        template:
          $ref: "#/components/schemas/TemplateConfiguration"
      required:
        - target_url
        - search_id
      description: Creates a hook for one of your predefined searches.
    ErrorsCollection:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: "#/components/schemas/HookError"
    HookError:
      type: object
      properties:
        details:
          type: string
          description: Human-readable error message.
        title:
          type: string
          description: Error title
        type:
          type: string
          description: Error category
        meta:
          type: object
          description: Additional meta-information to qualify error
    SingleHook:
      type: object
      properties:
        hook:
          $ref: "#/components/schemas/Hook"
      description: |-
        Get an individual hook.
         Retrieves an existing hook.
    CreateTagConfig:
      type: object
      properties:
        name:
          type: string
    CreateTagRequest:
      type: object
      title: Tag
      example:
        tag:
          name: 'new-tag'
      properties:
        tag:
          $ref: '#/components/schemas/CreateTagConfig'
    CreateTagResponse:
      type: object
      title: Tag
      example:
        tag:
          id: 123
          name: 'new-tag'
      properties:
        tag:
          $ref: '#/components/schemas/CreateTagResponseConfig'
    CreateTagResponseConfig:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
    assignment_rules.AssignmentRuleInput:
      type: object
      properties:
        query:
          $ref: '#/components/schemas/assignment_rules.RuleQueryInput'
    assignment_rules.AssignmentRuleOutput:
      type: object
      properties:
        created:
          type: string
          example: "2025-01-01T00:00:00Z"
        id:
          type: integer
          example: 1
        query:
          type: object
          additionalProperties:
            type: string
          example:
            boolean: this is a boolean
            type: boolean
        updated:
          type: string
          example: "2025-01-01T00:00:00Z"
    assignment_rules.CreateAssignmentRuleRequestInput:
      type: object
      properties:
        rule:
          $ref: '#/components/schemas/assignment_rules.AssignmentRuleInput'
    assignment_rules.RuleQueryInput:
      required:
        - case_sensitivity
        - type
      type: object
      properties:
        all_keywords:
          type: array
          example:
            - car
          items:
            type: string
        any_keywords:
          type: array
          example:
            - boat
          items:
            type: string
        boolean:
          type: string
          example: this is a boolean
        case_sensitivity:
          type: string
          example: "yes"
          enum:
            - "yes"
            - "no"
            - hybrid
        not_keywords:
          type: array
          example:
            - plane
          items:
            type: string
        type:
          type: string
          example: boolean
          enum:
            - keyword
            - boolean
    assignment_rules.SingleAssignmentRuleResponse:
      type: object
      properties:
        rule:
          $ref: '#/components/schemas/assignment_rules.AssignmentRuleOutput'
    controllers.ExplorePlusAPIError:
      type: object
      properties:
        message:
          type: string
    controllers.ExplorePlusAPIValidationError:
      type: object
      properties:
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        message:
          type: string
    controllers.MWAPIError:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/validation.MWAPIErrorDetails'
    custom_field_values.CreateCustomFieldValue:
      required:
        - name
      type: object
      properties:
        color:
          type: string
          example: '#ffffff'
        name:
          type: string
          example: my custom field value
    custom_field_values.CreateCustomFieldValueRequestInput:
      type: object
      properties:
        custom_field_value:
          $ref: '#/components/schemas/custom_field_values.CreateCustomFieldValue'
    custom_field_values.CustomFieldValueOutput:
      type: object
      properties:
        color:
          type: string
          example: '#ffffff'
        created:
          type: string
          example: "2025-01-01T00:00:00Z"
        id:
          type: integer
          example: 1
        name:
          type: string
          example: my custom field value
        num_rules:
          type: integer
          example: 1
        rules:
          type: array
          items:
            $ref: '#/components/schemas/assignment_rules.AssignmentRuleOutput'
        updated:
          type: string
          example: "2025-01-01T00:00:00Z"
    custom_field_values.SingleCustomFieldValueResponse:
      type: object
      properties:
        custom_field_value:
          $ref: '#/components/schemas/custom_field_values.CustomFieldValueOutput'
    custom_fields.CreateCustomField:
      required:
        - name
        - type
      type: object
      properties:
        description:
          type: string
          example: this is an example of a description
        folder_id:
          type: integer
          example: 1
        name:
          type: string
          example: my custom field
        type:
          type: string
          example: tag
          enum:
            - tag
            - multi_value
    custom_fields.CreateCustomFieldRequestInput:
      type: object
      properties:
        custom_field:
          $ref: '#/components/schemas/custom_fields.CreateCustomField'
    custom_fields.CustomFieldFolderOutput:
      type: object
      properties:
        id:
          type: integer
          example: 1
        name:
          type: string
          example: my custom field folder
        num_custom_fields:
          type: integer
          example: 1
    custom_fields.CustomFieldFoldersResponse:
      type: object
      properties:
        folders:
          type: array
          items:
            $ref: '#/components/schemas/custom_fields.CustomFieldFolderOutput'
        page:
          type: integer
          example: 1
        page_size:
          type: integer
          example: 10
        total:
          type: integer
          example: 20
    custom_fields.CustomFieldOutput:
      type: object
      properties:
        created:
          type: string
          example: "2025-01-01T00:00:00Z"
        description:
          type: string
          example: this is an example of a description
        folder_id:
          type: integer
          example: 2
        id:
          type: integer
          example: 1
        name:
          type: string
          example: my custom field
        type:
          type: string
          example: boolean
        updated:
          type: string
          example: "2025-01-01T00:00:00Z"
        values:
          type: array
          items:
            $ref: '#/components/schemas/custom_field_values.CustomFieldValueOutput'
    custom_fields.MultiCustomFieldsResponse:
      type: object
      properties:
        custom_fields:
          type: array
          items:
            $ref: '#/components/schemas/custom_fields.CustomFieldOutput'
        page:
          type: integer
          example: 1
        page_size:
          type: integer
          example: 10
        total:
          type: integer
          example: 20
    custom_fields.SingleCustomFieldResponse:
      type: object
      properties:
        custom_field:
          $ref: '#/components/schemas/custom_fields.CustomFieldOutput'
    custom_fields.UpdateCustomField:
      required:
        - description
        - name
      type: object
      properties:
        description:
          type: string
          example: this is an example of a description
        folder_id:
          type: integer
          example: 1
        name:
          type: string
          example: my custom field
    custom_fields.UpdateCustomFieldRequestInput:
      type: object
      properties:
        custom_field:
          $ref: '#/components/schemas/custom_fields.UpdateCustomField'
    docmod.DocModTag:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
    explore_plus.CombinedInput:
      type: object
      properties:
        id:
          type: integer
          example: 123456
        type:
          type: string
          example: SEARCH
    explore_plus.QueryInput:
      required:
        - type
      type: object
      properties:
        all_keywords:
          type: array
          example:
            - car
          items:
            type: string
        all_searches:
          type: array
          items:
            $ref: '#/components/schemas/explore_plus.CombinedInput'
        any_keywords:
          type: array
          example:
            - boat
          items:
            type: string
        any_searches:
          type: array
          items:
            $ref: '#/components/schemas/explore_plus.CombinedInput'
        boolean:
          type: string
          example: this is a boolean
        case_sensitivity:
          type: string
          example: "yes"
        not_keywords:
          type: array
          example:
            - plane
          items:
            type: string
        not_searches:
          type: array
          items:
            $ref: '#/components/schemas/explore_plus.CombinedInput'
        type:
          type: string
          example: boolean
          enum:
            - keyword
            - boolean
            - combined
    searches.CreateSearch:
      required:
        - name
      type: object
      properties:
        color:
          type: string
          example: '#ffffff'
        data_collection:
          type: boolean
          example: true
        description:
          type: string
          example: this is an example of a description
        folder_id:
          type: integer
          example: 1
        name:
          type: string
          example: my search
        query:
          $ref: '#/components/schemas/explore_plus.QueryInput'
    searches.CreateSearchRequestInput:
      type: object
      properties:
        search:
          $ref: '#/components/schemas/searches.CreateSearch'
    searches.MultiSearchResponse:
      type: object
      properties:
        page:
          type: integer
          example: 1
        page_size:
          type: integer
          example: 10
        searches:
          type: array
          items:
            $ref: '#/components/schemas/searches.SearchOutput'
        total:
          type: integer
          example: 20
    searches.SearchFolderOutput:
      type: object
      properties:
        color:
          type: string
          example: '#ffffff'
        created:
          type: string
          example: "2025-01-01T00:00:00Z"
        id:
          type: integer
          example: 1
        name:
          type: string
          example: my search folder
        num_searches:
          type: integer
          example: 2
        parent:
          type: integer
          example: 1
        updated:
          type: string
          example: "2025-01-01T00:00:00Z"
        hidden:
          type: boolean
          example: false
    searches.SearchFoldersResponse:
      type: object
      properties:
        folders:
          type: array
          items:
            $ref: '#/components/schemas/searches.SearchFolderOutput'
        page:
          type: integer
          example: 1
        page_size:
          type: integer
          example: 10
        total:
          type: integer
          example: 20
    searches.SearchOutput:
      type: object
      properties:
        color:
          type: string
          example: '#ffffff'
        created:
          type: string
          example: "2025-01-01T00:00:00Z"
        data_collection:
          type: boolean
          example: false
        data_collection_updated:
          type: string
          example: "2025-01-01T00:00:00Z"
        description:
          type: string
          example: this is an example of a description
        folder_id:
          type: integer
          example: 2
        id:
          type: integer
          example: 1
        name:
          type: string
          example: my search
        query:
          type: object
          additionalProperties:
            type: string
          example:
            boolean: this is a boolean
            type: boolean
        updated:
          type: string
          example: "2025-01-01T00:00:00Z"
        hidden:
          type: boolean
          example: false
    searches.SingleSearchResponse:
      type: object
      properties:
        search:
          $ref: '#/components/schemas/searches.SearchOutput'
    validation.MWAPIErrorDetails:
      type: object
      properties:
        details:
          type: string
        title:
          type: string
        type:
          type: string
    controllers.APIError:
      type: object
      properties:
        message:
          type: string
    controllers.APIValidationError:
      type: object
      properties:
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        message:
          type: string
    explore_plus.Analytic:
      type: object
      properties:
        analysis:
          $ref: '#/components/schemas/explore_plus.Analytic'
        custom_field_id:
          type: integer
          example: 123
        dimension:
          type: string
          example: document_count
        granularity:
          type: string
          example: hour
        limit:
          type: integer
          example: 10
        measures:
          type: array
          example:
            - engagement
          items:
            type: string
        searches:
          type: array
          example:
            - 123
            - 456
          items:
            type: integer
        type:
          type: string
          example: document_count
    explore_plus.AnalyticResponse:
      type: object
      properties:
        analysis:
          type: array
          items:
            type: integer
        document_count:
          type: integer
    explore_plus.CatalogResponse:
      type: object
      properties:
        dimensions:
          type: array
          example:
            - author_age
            - author_gender
          items:
            type: string
        measures:
          type: array
          example:
            - engagement
            - estimated_views
          items:
            type: string
        types:
          type: array
          example:
            - document_count
            - top_terms
          items:
            type: string
    explore_plus.CustomAnalyticsRequest:
      required:
        - analysis
        - end
        - searches
        - start
        - tz
      type: object
      properties:
        analysis:
          $ref: '#/components/schemas/explore_plus.Analytic'
        end:
          type: string
          example: "2021-09-28T00:00:00"
        filters:
          $ref: '#/components/schemas/explore_plus.Filters'
        searches:
          $ref: '#/components/schemas/explore_plus.IntBreakdown'
        start:
          type: string
          example: "2021-09-27T00:00:00"
        tz:
          type: string
          example: Europe/London
    explore_plus.CustomResponse:
      required:
        - analysis
        - end
        - searches
        - start
        - tz
      type: object
      properties:
        analysis:
          $ref: '#/components/schemas/explore_plus.Analytic'
        end:
          type: string
          example: "2021-09-28T00:00:00"
        filters:
          $ref: '#/components/schemas/explore_plus.Filters'
        result:
          $ref: '#/components/schemas/explore_plus.AnalyticResponse'
        searches:
          $ref: '#/components/schemas/explore_plus.IntBreakdown'
        start:
          type: string
          example: "2021-09-27T00:00:00"
        tz:
          type: string
          example: Europe/London
    explore_plus.ExplorePlusParameters:
      required:
        - tz
      type: object
      properties:
        doc_ids:
          type: array
          example:
            - document1
            - document2
          items:
            type: string
        end:
          type: string
          example: "2021-09-28T00:00:00"
        filters:
          $ref: '#/components/schemas/explore_plus.Filters'
        page:
          type: integer
          example: 1
        page_size:
          maximum: 1000
          minimum: 0
          type: integer
          example: 10
        searches:
          $ref: '#/components/schemas/explore_plus.IntBreakdown'
        sort_by:
          type: string
          example: date
          enum:
            - date
            - reach
            - engagement
            - social_echo
            - relevance
            - prominence
            - views
        sort_order:
          type: string
          example: desc
          enum:
            - asc
            - desc
        start:
          type: string
          example: "2021-09-27T00:00:00"
        template:
          $ref: '#/components/schemas/explore_plus.Template'
        tz:
          type: string
          example: Europe/London
    explore_plus.Filters:
      type: object
      properties:
        countries:
          $ref: '#/components/schemas/explore_plus.StringBreakdown'
        custom_fields:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/explore_plus.IntBreakdown'
        languages:
          $ref: '#/components/schemas/explore_plus.StringBreakdown'
        sentiments:
          $ref: '#/components/schemas/explore_plus.SentimentBreakdown'
        sources:
          $ref: '#/components/schemas/explore_plus.StringBreakdown'
    explore_plus.IntBreakdown:
      type: object
      properties:
        all:
          type: array
          example:
            - 123
            - 456
          items:
            type: integer
        any:
          type: array
          example:
            - 123
            - 456
          items:
            type: integer
        none:
          type: array
          example:
            - 123
            - 456
          items:
            type: integer
    explore_plus.Response:
      type: object
      properties:
        count:
          type: integer
        documents:
          type: array
          items:
            type: object
    explore_plus.SentimentBreakdown:
      type: object
      properties:
        all:
          type: array
          example:
            - positive
            - negative
          items:
            type: string
        any:
          type: array
          example:
            - positive
            - negative
          items:
            type: string
        none:
          type: array
          example:
            - positive
            - negative
          items:
            type: string
    explore_plus.StringBreakdown:
      type: object
      properties:
        all:
          type: array
          example:
            - abc
            - def
          items:
            type: string
        any:
          type: array
          example:
            - abc
            - def
          items:
            type: string
        none:
          type: array
          example:
            - abc
            - def
          items:
            type: string
    explore_plus.Template:
      type: object
      properties:
        name:
          type: string
          example: api.json
    ByocAttachment:
      required:
        - mime
        - type
        - url
      type: object
      properties:
        name:
          maxLength: 1000
          minLength: 0
          type: string
          description: Name of the attachment
          example: Attachment Name
        url:
          type: string
          description: URL of the attachment
          format: url
          example: http://example.com
        mime:
          maxLength: 1000
          minLength: 0
          type: string
          description: MIME type of the attachment
          example: image/png
        altText:
          maxLength: 10000
          minLength: 0
          type: string
          description: Alternative text for the attachment
          example: Alt text for the attachment
        type:
          type: string
          description: Type of the attachment
          enum:
            - image
            - audio
            - video
        thumbnail:
          type: string
          description: Thumbnail URL of the attachment
          format: url
          example: http://example.com
      description: List of attachments associated with the document
    ByocDocument:
      required:
        - contentType
        - originPlatform
        - source
        - timestamp
        - url
      type: object
      properties:
        delete:
          type: boolean
          description: Indicates delete action on the document
        id:
          maxLength: 1000
          minLength: 0
          type: string
          description: Unique identifier for the document
          example: "12345"
        url:
          type: string
          description: URL of the document
          format: url
          example: http://example.com
        timestamp:
          maximum: 2524608000000
          minimum: 946684800000
          type: integer
          description: Timestamp of the document in milliseconds since epoch
          format: int64
          example: 1748272125000
        content:
          $ref: '#/components/schemas/ByocContent'
        originPlatform:
          type: string
          description: Platform where the document originated
          enum:
            - youtube
            - podcasts
            - facebook
            - instagram
            - reddit
            - sina_weibo
            - wechat
            - twitter
            - linkedin
            - pinterest
            - twitch
            - tiktok
            - douyin
            - little_red_book
            - youku
            - bilibili
            - threads
            - kakaotalk
            - linevoom
            - discord
            - snapchat
            - bluesky
            - news_publisher
            - broadcast
            - tender_portal
            - reviews
            - blogs
            - forums
            - social_comments
            - telegram
        contentType:
          type: string
          description: Type of content in the document
          enum:
            - video
            - comment
            - repost
            - reply
            - quoted
            - audio
            - post
            - online_press
            - print_press
            - tender
            - product_review
            - voc
        attachments:
          type: array
          description: List of attachments associated with the document
          items:
            $ref: '#/components/schemas/ByocAttachment'
        source:
          $ref: '#/components/schemas/ByocSource'
        user:
          $ref: '#/components/schemas/ByocUser'
        parent:
          $ref: '#/components/schemas/ByocParent'
        product:
          $ref: '#/components/schemas/ByocProduct'
        metrics:
          $ref: '#/components/schemas/ByocMetrics'
        sentiment:
          type: string
          description: Document level sentiment
          enum:
            - positive
            - negative
            - neutral
            - unknown
        customFields:
          type: array
          description: List of Explore+ custom fields
          items:
            $ref: '#/components/schemas/ByocCustomField'
          maxItems: 100
          minItems: 1
    ByocMetrics:
      type: object
      properties:
        views:
          type: integer
          description: Number of views
          format: int32
          example: 100
        audience:
          type: integer
          description: Audience size
          format: int32
          example: 50
        likes:
          type: integer
          description: Likes count
          format: int32
          example: 50
        shares:
          type: integer
          description: Shares count
          format: int32
          example: 50
        comments:
          type: integer
          description: Comments count
          format: int32
          example: 50
        replies:
          type: integer
          description: Replies count
          format: int32
          example: 50
        ave:
          type: number
          description: Advertising value equivalency
          format: float
          example: 4.5
        score:
          type: number
          description: Score of the document
          format: float
          example: 3.2
      description: Metrics associated with the document
    ByocImportsDocumentsRequest:
      required:
        - documents
      type: object
      properties:
        documents:
          maxItems: 500
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/ByocDocument'
    ByocSource:
      required:
        - name
        - url
      type: object
      properties:
        name:
          maxLength: 1000
          minLength: 0
          type: string
          description: Name of the source
          example: The Meltwater Times
        url:
          type: string
          description: URL of the source
          format: url
          example: http://example.com
        location:
          $ref: '#/components/schemas/Location'
      description: Source details of the document
    ByocContent:
      type: object
      properties:
        title:
          maxLength: 10000
          minLength: 0
          type: string
          description: Title of the content
          example: Example Title
        subtitle:
          maxLength: 10000
          minLength: 0
          type: string
          description: Subtitle of the content
          example: Example Subtitle
        text:
          type: string
          description: Text content
          example: Example text content
        duration:
          type: integer
          description: Duration of the content in seconds
          format: int32
          example: 120
      description: Content details of the document
    ByocCoordinates:
      required:
        - lat
        - lon
      type: object
      properties:
        lat:
          type: number
          description: Latitude of the location
          format: float
          example: 52.52
        lon:
          type: number
          description: Longitude of the location
          format: float
          example: 13.405
      description: Coordinates of the location
    ByocLocation:
      type: object
      properties:
        countryCode:
          type: string
          description: ISO 3166-1 alpha-2 country code
          example: DE
        locationString:
          maxLength: 1000
          minLength: 0
          type: string
          description: Location string
          example: Berlin, Germany
        coordinates:
          $ref: '#/components/schemas/ByocCoordinates'
      description: Location details of the user
    ByocParent:
      type: object
      properties:
        id:
          maxLength: 1000
          minLength: 0
          type: string
          description: Unique identifier for the parent document
          example: parent123
        url:
          type: string
          description: URL of the parent document
          format: url
          example: http://example.com
        title:
          maxLength: 10000
          minLength: 0
          type: string
          description: Title of the parent document
          example: Parent Document Title
      description: Parent document details
    ByocProduct:
      required:
        - name
      type: object
      properties:
        name:
          maxLength: 1000
          minLength: 0
          type: string
          description: Name of the product
          example: John Doe
      description: Product details
    ByocUser:
      type: object
      properties:
        name:
          maxLength: 1000
          minLength: 0
          type: string
          description: Name of the user
          example: John Doe
        handle:
          maxLength: 1000
          minLength: 0
          type: string
          description: Handle for the user
          example: johndoe
        url:
          type: string
          description: URL of the user's profile
          format: url
          example: http://example.com
        imageUrl:
          type: string
          description: URL of the user's profile image
          format: url
          example: http://example.com/avatar.png
        gender:
          type: string
          description: Gender of the user
          enum:
            - m
            - f
            - n
        location:
          $ref: '#/components/schemas/ByocLocation'
      description: User / author / speaker / presenter details associated with the document
    ByocCustomField:
      type: object
      required:
        - label
        - values
      properties:
          label:
            type: string
            description: Label of the custom field
            example: Priority
          values:
            type: array
            maxItems: 100
            minItems: 1
            items:
              type: string
            description: Values associated with the custom field
            example: ['High', 'Urgent']
      additionalProperties: false
      description: Custom fields associated with the document
    ByocImportsDocumentsResult:
      type: object
      properties:
        batchId:
          type: string
        count:
          type: integer
          format: int32
    ByocResultAPIValidationError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            required:
              - type
              - details
              - title
            properties:
              type:
                type: string
                example: VALIDATION
                description: Category of error
              title:
                type: string
                example: 'Validation error for field: type'
                description: Title of error
              details:
                type: string
                example: This field cannot be updated
                description: Details about the error
            additionalProperties: false
          description: List of problems with the request
      example:
        errors:
          - type: VALIDATION
            title: Invalid data
            details: "field: invalid value"
      description: Bad Request
    ByocResultAPIError:
      type: object
      properties:
        message:
          type: string
    ByocIngestionBatch:
      type: object
      properties:
        batch_id:
          type: string
        created_at:
          type: string
        import_tags:
          type: array
          items:
            type: string
        statistics:
          $ref: '#/components/schemas/ByocIngestionBatchStatistics'
        status:
          type: string
    ByocIngestionBatchStatistics:
      type: object
      properties:
        documents_indexed:
          type: integer
        documents_sent:
          type: integer
        documents_marked_duplicate:
          type: integer
        subgroups:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ByocIngestionSubGroup'
    ByocIngestionSubGroup:
      type: object
      properties:
        documents_indexed:
          type: integer
        documents_marked_duplicate:
          type: integer
    ByocListBatchesResult:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/ByocIngestionBatch'
        page:
          type: integer
        page_size:
          type: integer
        total:
          type: integer
    ByocGetBatchesResult:
      type: object
      properties:
        batch_id:
          type: string
        created_at:
          type: string
        import_tags:
          type: array
          items:
            type: string
        statistics:
          $ref: '#/components/schemas/ByocIngestionBatchStatistics'
        status:
          type: string
    ByocGetImportTagsResult:
      type: object
      properties:
        created_at:
          type: string
        import_tag:
          type: string
        statistics:
          $ref: '#/components/schemas/ByocIngestionBatchStatistics'
        status:
          type: string

  securitySchemes:
    apikey:
      type: apiKey
      name: apikey
      in: header
