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

# Batch Search Results API

> I submitted an asynchronous search request and got a job ID. Now I want to check the job status and get the results of the batch if the screening is done. On successful submission of a response to the search endpoint, a job id will be returned. Use this job id to query the status of your search. If the search is in progress, it will return progress data indicating how far along the job is to completion. If the search is complete, then the full response object will be returned with the call. For every object in the requests object of the body that was submitted to /search, there will be a response profile object returned by this endpoint. Check out the Profile Data Schema for a detailed view of the profile object.

**New:** matches in completed rows can include Automatic Disposition annotations - see the `review_status`, `automatic_disposition`, and `disposition_hint` response fields below and the [Automatic Disposition Guide](/api-reference/automatic-disposition-guide).



## OpenAPI

````yaml /api-reference/core.json get /v1/search/{jobid}
openapi: 3.0.0
info:
  version: 1.6.2
  title: MinervaAI Core API
  description: >-
    The MinervaAI core monolith that serves the search, consensus, pruning, and
    report generation capabilities.
servers:
  - url: https://api.gominerva.com
    description: The production API server for Minerva AI
security:
  - ApiKeyAuth: []
tags:
  - name: Search
    description: >-
      Current screening, search, and reporting endpoints for active
      integrations.
  - name: Legacy
    description: >-
      Legacy endpoints retained for backwards compatibility. Prefer the
      canonical POST-based search flows for new integrations.
  - name: API to UI Integration
    description: Endpoints used to bridge API integrations with Minerva UI workflows.
  - name: Potential Matches
    description: Update review workflow state for potential matches returned by searches.
paths:
  /v1/search/{jobid}:
    get:
      tags:
        - Search
      summary: Batch Search Results API
      description: >-
        I submitted an asynchronous search request and got a job ID. Now I want
        to check the job status and get the results of the batch if the
        screening is done. On successful submission of a response to the search
        endpoint, a job id will be returned. Use this job id to query the status
        of your search. If the search is in progress, it will return progress
        data indicating how far along the job is to completion. If the search is
        complete, then the full response object will be returned with the call.
        For every object in the requests object of the body that was submitted
        to /search, there will be a response profile object returned by this
        endpoint. Check out the Profile Data Schema for a detailed view of the
        profile object.


        **New:** matches in completed rows can include Automatic Disposition
        annotations - see the `review_status`, `automatic_disposition`, and
        `disposition_hint` response fields below and the [Automatic Disposition
        Guide](/api-reference/automatic-disposition-guide).
      parameters:
        - name: jobid
          in: path
          required: true
          description: >-
            The job ID of a former search submission to the search POST
            endpoint.
          schema:
            type: string
            format: uuid
          example: 25e15c07-1322-4364-a26e-2a6ef25c81d4
      responses:
        '200':
          description: >-
            The job id was valid, and either the status or the full search
            results are returned.


            **Automatic Disposition (New):** when the workspace that submitted
            the batch has [Automatic Disposition](/automatic-disposition-guide)
            enabled with the **Direct API** channel turned on, Minerva analyzes
            every screened potential match in a row's `results[]` - one carrying
            at least one risk flag (Sanctions, PEP, News, Criminal, Legal, and
            so on) in `checklist.screen` - before that row completes, which can
            add a few seconds per screened entity to row completion. The same
            rows are returned by `POST /v1/searchStatus`.


            - `review_status` changes **only** in Full Auto Mode: a prediction
            that meets the configured confidence threshold sets `true_positive`
            or `false_positive`, and the applied prediction is returned in
            `automatic_disposition`.

            - In Hint Mode the prediction is returned in `disposition_hint` and
            `review_status` stays `unresolved` - the annotation is advisory, for
            your integration to interpret in real time.

            - An analysis that completes without meeting a threshold returns
            `disposition_hint` with `prediction: "undetermined"` and the match
            stays `unresolved`.


            Clean matches and workspaces without the feature enabled never carry
            these fields. The default response example shows annotated matches.
            Opt the whole job out at submission by sending the
            `X-Minerva-Automatic-Disposition: skip` header on `POST /v1/search`
            (inert unless the feature is enabled for the workspace), and see the
            [Automatic Disposition
            Guide](/api-reference/automatic-disposition-guide) for consuming
            these fields in an integration.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 200
                  response:
                    type: string
                    enum:
                      - complete
                      - pending
                      - error
                    description: The current status of the batch search job
                    example: complete
                  submitted:
                    type: integer
                    description: Total number of search requests submitted in the batch
                    example: 42
                  completed:
                    type: integer
                    description: Number of search requests completed so far
                    example: 42
                  results:
                    type: array
                    description: >-
                      Array of search results (only present when response is
                      "complete")
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Unique identifier for this search result
                          example: '1624676726659826'
                        duration:
                          type: number
                          description: Time taken to complete this search in seconds
                          example: 29.322528839111328
                        jobid:
                          type: string
                          description: The job ID this result belongs to
                          example: 25e15c07-1322-4364-a26e-2a6ef25c81d4
                        status:
                          type: string
                          enum:
                            - complete
                            - error
                          description: Status of this individual search
                          example: complete
                        uid:
                          type: string
                          description: User account identifier
                          example: YOUR ACCOUNT UID
                        dashboardViewLink:
                          type: string
                          description: Link to view results in the Minerva dashboard
                          example: >-
                            https://app.gominerva.com/dashboard?requestId=REQUEST_ID&jobId=JOB_ID#results
                        request:
                          type: object
                          description: The original search request parameters
                          properties:
                            name:
                              type: string
                              example: Alexander Lukashenko
                            gender:
                              type: string
                              enum:
                                - Male
                                - Female
                                - Other
                              example: Male
                            city:
                              type: string
                              example: Minsk
                            type:
                              type: string
                              enum:
                                - individual
                                - organization
                              example: individual
                            country:
                              type: string
                              example: Belarus
                            custom_id:
                              type: string
                              example: '1234567890'
                            feeds:
                              type: array
                              items:
                                type: string
                              example:
                                - Sanctions
                                - Criminal
                                - PEP
                                - Offshore
                                - News
                                - Social Media
                                - Open Source
                                - Ownership
                                - Legal
                                - Registries
                            CRR:
                              type: object
                              properties:
                                crossBorder:
                                  type: boolean
                                  example: true
                                allowRemote:
                                  type: boolean
                                  example: true
                                fastTransfer:
                                  type: boolean
                                  example: false
                                allowThirdParty:
                                  type: boolean
                                  example: false
                            global_filters:
                              type: object
                              properties:
                                location_match_strictness:
                                  type: string
                                  enum:
                                    - city
                                    - state
                                    - country
                                  example: state
                                match_threshold:
                                  type: number
                                  example: 0.8
                                soft_match:
                                  type: string
                                  example: 'false'
                            feed_filters:
                              type: object
                              description: Feed-specific filtering options
                              additionalProperties:
                                type: object
                                properties:
                                  soft_match:
                                    type: boolean
                                  match_threshold:
                                    type: number
                        results:
                          type: array
                          description: >-
                            Array of potential matches found for this search.
                            Each result is a Profile object containing rich
                            profile information with source lineage.
                          items:
                            $ref: '#/components/schemas/Profile'
              examples:
                withAutomaticDisposition:
                  summary: Automatic Disposition enabled (screened matches annotated)
                  value:
                    status: 200
                    response: complete
                    submitted: 2
                    completed: 2
                    results:
                      - id: '1624676726659826'
                        jobid: 25e15c07-1322-4364-a26e-2a6ef25c81d4
                        status: complete
                        searchId: <requestId>_0
                        request:
                          name: John Example
                          type: individual
                          feeds:
                            - Sanctions
                            - PEP
                            - News
                        results:
                          - type: 0
                            name:
                              value: John Example
                              match_score: 0.97
                              criteria_match_level: close
                            score: 0.97
                            checklist:
                              screen:
                                Sanctions: true
                                PEP: false
                                News: false
                            review_status: unresolved
                            disposition_hint:
                              prediction: true_positive
                              confidence: 0.99
                              analysis_status: completed
                              source: direct_api
                              rationale: >-
                                The searched subject matches the potential match
                                on name and country context, and no discovered
                                identity attribute contradicts the match.
                            sources:
                              - Example Sanctions List
                          - type: 0
                            name:
                              value: John Example
                              match_score: 0.92
                              criteria_match_level: close
                            score: 0.88
                            checklist:
                              screen:
                                Sanctions: false
                                PEP: true
                                News: false
                            review_status: false_positive
                            automatic_disposition:
                              prediction: false_positive
                              confidence: 0.95
                              analysis_status: completed
                              source: direct_api
                              rationale: >-
                                The searched subject's occupation and country
                                conflict with the listed person, and the date of
                                birth reported by the triggering source does not
                                align with the submitted subject.
                            sources:
                              - Example Government Biography
                          - type: 0
                            name:
                              value: John Example
                              match_score: 0.9
                              criteria_match_level: close
                            score: 0.82
                            checklist:
                              screen:
                                Sanctions: false
                                PEP: false
                                News: false
                            review_status: unresolved
                            sources:
                              - Example Corporate Registry
                withoutAutomaticDisposition:
                  summary: Automatic Disposition disabled or opted out
                  value:
                    status: 200
                    response: complete
                    submitted: 2
                    completed: 2
                    results:
                      - id: '1624676726659826'
                        jobid: 25e15c07-1322-4364-a26e-2a6ef25c81d4
                        status: complete
                        searchId: <requestId>_0
                        request:
                          name: John Example
                          type: individual
                          feeds:
                            - Sanctions
                            - PEP
                            - News
                        results:
                          - type: 0
                            name:
                              value: John Example
                              match_score: 1
                              criteria_match_level: exact
                            score: 1
                            checklist:
                              screen:
                                Sanctions: true
                                PEP: false
                                News: false
                            review_status: unresolved
                            sources:
                              - Example Sanctions List
        '400':
          description: >-
            Returns a 400 error when there is an issue with the job ID parameter
            or it cannot be found.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 400
                  message:
                    type: string
                    example: No data exists for this jobid.
        '403':
          description: >-
            Returns a 403 error when authentication headers are missing or
            invalid, or if the requested resource cannot be accessed by the
            user.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 403
                  message:
                    type: string
                    example: Missing x-api-key header.
        '500':
          description: >-
            Returns a 500 error when an internal server error occurs while
            processing the request.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 500
                  message:
                    type: string
                    example: >-
                      Internal server error occurred while processing the
                      request
      security:
        - ApiKeyAuth: []
components:
  schemas:
    Profile:
      type: object
      description: >-
        MinervaAI data schema describing the screening results for a single
        profile. Contains rich information with source lineage for entity
        resolution and compliance screening.
      properties:
        type:
          type: integer
          enum:
            - 0
            - 1
          description: The type of profile. 0 for individual, 1 for organization.
          example: 0
        name:
          $ref: '#/components/schemas/SourcedName'
          description: The primary name of the profile with source lineage.
        last_updated:
          type: string
          description: String timestamp of when the profile was last updated.
          example: Saturday, Jun 26 2021 - 03:05:55 GMT00:00
        merge_id:
          type: string
          description: The unique ID of this profile in the knowledge graph.
          example: merge_abc123
        pep_level:
          type: integer
          minimum: 1
          maximum: 4
          description: PEP inference tier from 1-4, where 1 is highest risk.
          example: 2
        aliases:
          type: array
          description: >-
            Other known names for the profile, including names in non-Latin
            character sets.
          items:
            $ref: '#/components/schemas/SourcedName'
        gender:
          $ref: '#/components/schemas/SourcedGender'
          description: >-
            The gender of the profile. Only present for individual type
            profiles.
        company_type:
          $ref: '#/components/schemas/SourcedString'
          description: The type of company. Only present for organization type profiles.
        industry:
          $ref: '#/components/schemas/SourcedString'
          description: The industry of the profile.
        company_size:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The size of the company. Only present for organization type
            profiles.
        status:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The current status of the profile. For corporations, indicates
            company status such as "active" or "dissolved".
        occupation:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The job title or position of the individual. Only present for
            individual type profiles.
        organization:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The employer, affiliated entity, political party, or other
            organization associated with the individual. Only present for
            individual type profiles.
        nationality:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The known nationality or affiliated country of the profile. Contains
            the full country name.
        time_begin:
          $ref: '#/components/schemas/SourcedDate'
          description: >-
            The date of birth of the individual, or the date of
            incorporation/date active of the organization.
        time_end:
          $ref: '#/components/schemas/SourcedDate'
          description: >-
            If known/applicable, the date deceased of the individual or date of
            closure of the organization.
        alt_times:
          type: array
          description: Other known dates of birth or incorporation for the profile.
          items:
            $ref: '#/components/schemas/SourcedDate'
        place_of_birth:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The place of birth of the individual. May contain city, state,
            and/or country.
        contact:
          $ref: '#/components/schemas/ProfileContact'
          description: Contact information including email and phone.
        media:
          $ref: '#/components/schemas/ProfileMedia'
          description: >-
            Media-related information including adverse/neutral media URLs and
            social media usernames. Present when News, Open Source, or Social
            Media feeds are included.
        locations:
          type: array
          description: >-
            Locations associated with the profile such as addresses, cities, or
            countries.
          items:
            $ref: '#/components/schemas/SourcedString'
        images:
          type: array
          description: Images associated with the profile.
          items:
            $ref: '#/components/schemas/SourcedString'
        other_fields:
          type: object
          description: Miscellaneous fields that do not fit within other defined fields.
          additionalProperties:
            $ref: '#/components/schemas/SourcedString'
        links:
          type: array
          description: >-
            Individuals, entities, or concepts linked to the profile. Includes
            family relationships (Father, Brother), ownership records (Director,
            Shareholder), and employee records (Chief Financial Officer).
          items:
            $ref: '#/components/schemas/SourcedAffiliation'
        ID:
          type: object
          description: >-
            Identity-associated fields such as passport numbers, driver's
            licenses, national IDs.
          additionalProperties:
            $ref: '#/components/schemas/SourcedString'
        documents:
          type: array
          description: >-
            References to digital documents discovered for this profile. May
            include corporate registry listings, court/legal documents, public
            securities filings (SEC), or open source investigation files.
          items:
            $ref: '#/components/schemas/UrlInfo'
        websites:
          type: array
          description: >-
            Websites that are owned by or describe this profile, including
            corporate websites, personal websites, and blogs.
          items:
            $ref: '#/components/schemas/SourcedString'
        notes:
          type: array
          description: Other unstructured transcripts associated with the profile.
          items:
            $ref: '#/components/schemas/SourcedString'
        checklist:
          $ref: '#/components/schemas/ProfileChecklist'
          description: >-
            Watchlist and risk screening states and sources. Contains hit status
            for each risk feed and detailed breakdown of hits.
        client_risk_rating:
          $ref: '#/components/schemas/ClientRiskRating'
          description: >-
            Customer Risk Rating (CRR) assessment based on discovered data.
            Provides overall risk score and contributing factors.
        sources:
          type: array
          description: List of source names that contributed data to this profile.
          items:
            type: string
          example:
            - OFAC SDN List
            - World Leaders Database
            - Reuters
        source_details:
          type: array
          description: >-
            Details and metadata associated with the sources that contributed
            data to this profile.
          items:
            $ref: '#/components/schemas/SourceDetailElement'
        score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            The Criteria Match Score - a normalized value between 0 and 1
            representing the match percentage to the search parameters. 1.0 =
            exact match, 0.8-0.99 = partial match, < 0.79 = low confidence
            match.
          example: 0.95
        match_score_info:
          $ref: '#/components/schemas/MatchScoreInfo'
          description: >-
            Detailed breakdown of the Criteria Match Score for each field
            provided in the search parameters.
        review_status:
          type: string
          enum:
            - not_found
            - unresolved
            - true_positive
            - false_positive
            - suppressed
          description: >-
            The review status of the potential match. New matches start as
            `unresolved`. When the workspace runs Automatic Disposition in Full
            Auto Mode for the Direct API channel, Minerva can set
            `true_positive` or `false_positive` before the search response or
            batch row completes; the applied prediction is returned in
            `automatic_disposition`. Hint Mode never changes this field - the
            match stays `unresolved` and the advisory prediction is returned in
            `disposition_hint`.
          example: unresolved
        automatic_disposition:
          $ref: '#/components/schemas/DispositionAnnotation'
          description: >-
            Present only when Automatic Disposition auto-dispositioned this
            potential match (Full Auto Mode for the Direct API channel) and set
            `review_status`. Only screened matches - those with at least one
            flagged feed in `checklist.screen` - are analyzed; clean matches and
            workspaces without the feature enabled never carry this field.
        disposition_hint:
          $ref: '#/components/schemas/DispositionAnnotation'
          description: >-
            Present when the workspace runs an Automatic Disposition outcome in
            Hint Mode, or when the analysis completed without meeting the
            configured confidence threshold (an `undetermined` prediction).
            Advisory only: `review_status` stays `unresolved`, and the
            annotation is for the integration to interpret in real time. Only
            screened matches - those with at least one flagged feed in
            `checklist.screen` - are analyzed; clean matches and workspaces
            without the feature enabled never carry this field.
        reportURL:
          type: string
          description: >-
            URL to the generated PDF report for this profile, if one has been
            generated.
          example: https://storage.googleapis.com/...
      required:
        - type
        - name
        - sources
        - source_details
    SourcedName:
      type: object
      description: >-
        MinervaAI data schema describing a name for an individual or
        organization, with structured first/last name components and source
        lineage.
      properties:
        value:
          type: string
          description: >-
            The last name (for individuals) or full company name (for
            organizations).
          example: Smith
        first:
          $ref: '#/components/schemas/SourcedString'
          description: For individuals only, the first name with source lineage.
        other_names:
          type: array
          description: Middle names, initials, prefixes, and suffixes.
          items:
            $ref: '#/components/schemas/SourcedString'
        sources:
          type: array
          description: Source lineage for the last name or full company name.
          items:
            $ref: '#/components/schemas/SourcedStringSource'
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: Score from 0-10 indicating the reputation of the source.
          example: 8
        trusted:
          type: boolean
          description: >-
            Reports whether the reputation score is at or above the threshold
            for trusted status.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this name.
          example: 0.98
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
      required:
        - value
    SourcedGender:
      type: object
      description: >-
        A sourced gender object containing the gender value and source lineage.
        Gender is normalized to "Male", "Female", "Other", or "Unknown".
      properties:
        value:
          type: string
          description: The gender value, normalized to Male, Female, Other, or Unknown.
          enum:
            - Male
            - Female
            - Other
            - Unknown
          example: Male
        sources:
          type: array
          description: Array of source lineage objects for this gender field.
          items:
            $ref: '#/components/schemas/SourcedStringSource'
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: Score from 0-10 indicating the reputation of the source.
          example: 7
        trusted:
          type: boolean
          description: >-
            Reports whether the reputation score is at or above the threshold
            for trusted status.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this gender value.
          example: 1
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
      required:
        - value
    SourcedString:
      type: object
      description: >-
        A sourced string object containing a consensus value and source lineage.
        Minerva applies Entity Resolution to consolidate data from diverse
        sources, preserving the original source values and scores in the
        lineage.
      properties:
        value:
          type: string
          description: >-
            The consensus value that best represents the combination of source
            values discovered during the automated investigation.
          example: Software Engineer
        sources:
          type: array
          description: >-
            Array of source lineage objects containing information about each
            source that reported data for this field.
          items:
            $ref: '#/components/schemas/SourcedStringSource'
        timestamp:
          $ref: '#/components/schemas/DateObject'
          description: The timestamp associated with the data.
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: >-
            Score from 0-10 indicating the general reputation and
            trustworthiness of the consensus value. A value of 7 or above
            indicates "trusted" status.
          example: 8
        trusted:
          type: boolean
          description: >-
            Indicates whether the information is likely to be a ground truth,
            trusted value. True if reputation_score is 7 or above.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this field value.
          example: 0.95
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
        tag:
          type: string
          description: >-
            Additional label to assign the sourced string such as a social media
            platform.
          example: LinkedIn
      required:
        - value
    SourcedDate:
      type: object
      description: >-
        A sourced date object containing a consensus date value and source
        lineage for dates like date of birth or date of incorporation.
      properties:
        value:
          $ref: '#/components/schemas/DateObject'
          description: The consensus date value.
        sources:
          type: array
          description: Array of source lineage objects for this date field.
          items:
            $ref: '#/components/schemas/SourcedDateSource'
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: >-
            Score from 0-10 indicating the general reputation and
            trustworthiness of the consensus value.
          example: 9
        trusted:
          type: boolean
          description: >-
            Indicates whether the information is likely to be a ground truth,
            trusted value.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this date value.
          example: 1
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
      required:
        - value
    ProfileContact:
      type: object
      description: >-
        Contact information for the profile including email addresses and phone
        numbers.
      properties:
        email:
          type: array
          description: List of email addresses known for this profile.
          items:
            $ref: '#/components/schemas/SourcedString'
        phone:
          type: array
          description: >-
            List of phone numbers known for this profile. Not guaranteed to be
            in E.164 format.
          items:
            $ref: '#/components/schemas/SourcedString'
    ProfileMedia:
      type: object
      description: >-
        Media-related information for the profile including adverse and neutral
        media URLs and social media accounts. Present when News, Open Source, or
        Social Media feeds are included.
      properties:
        risk_urls:
          type: array
          description: >-
            URLs determined to contain relevant AML/financial crimes risk.
            Articles sorted here are both negative in sentiment and associated
            with one or more of the 28 financial crimes risk categories.
          items:
            $ref: '#/components/schemas/UrlInfo'
        neutral_urls:
          type: array
          description: >-
            URLs determined to not contain relevant AML/financial crimes risk.
            Articles sorted here are not negative in sentiment and not
            associated with financial crimes risk categories.
          items:
            $ref: '#/components/schemas/UrlInfo'
        usernames:
          type: array
          description: >-
            Social media accounts that the deep learning investigation model
            determined to be associated with this profile. Present when Open
            Source or Social Media feeds are included.
          items:
            $ref: '#/components/schemas/ProfileSocialUsername'
    SourcedAffiliation:
      type: object
      description: >-
        Screening data schema describing an individual, organization, or concept
        that is affiliated or linked to a profile. Used for relationships like
        family connections, ownership records, or employee records.
      properties:
        value:
          type: string
          description: >-
            The subject that this affiliation describes, such as a person,
            organization, or concept.
          example: Acme Corporation
        type:
          $ref: '#/components/schemas/SourcedString'
          description: >-
            The way that the source is affiliated with the subject, such as
            "Father", "Shareholder", or "Chief Financial Officer".
        sources:
          type: array
          description: Source lineage for the affiliation.
          items:
            $ref: '#/components/schemas/SourcedStringSource'
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: Score from 0-10 indicating the reputation of the source.
          example: 8
        trusted:
          type: boolean
          description: >-
            Reports whether the reputation score is at or above the threshold
            for trusted status.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this affiliation.
          example: 0.85
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
      required:
        - value
    UrlInfo:
      type: object
      description: >-
        URL link object with title, source information, and risk classification.
        Used for documents, news articles, and other web references.
      properties:
        url:
          type: string
          format: uri
          description: The URL of the document or article.
          example: https://www.bbc.com/news/article-123
        title:
          type: string
          description: The title of the document or article.
          example: 'Breaking News: Major Development'
        source_name:
          type: string
          description: The name of the source that published the content.
          example: BBC News
        snippet:
          type: string
          description: >-
            Small snippet of text from the article, up to 2000 characters.
            Provides context without requiring full article access.
          example: The individual was mentioned in connection with...
        language:
          type: string
          description: ISO2 code of the language of the text, or blank if unknown.
          example: en
        flags:
          type: object
          description: >-
            Risk and sentiment classification flags from deep learning inference
            on the article text.
          properties:
            sentiment:
              type: array
              description: >-
                Sentiment classification with confidence level. Values include
                "Positive", "Neutral", or "Negative" followed by confidence
                (Low/Medium/High).
              items:
                type: string
              example:
                - Negative (High)
            risk:
              type: array
              description: >-
                One or more of 28 different types of financial crimes risk, with
                confidence level. Examples: "Money Laundering (High)",
                "Fraud/Bribery/Corruption (Medium)", "Other (Non-Financial)
                (Low)".
              items:
                type: string
              example:
                - Money Laundering (High)
                - Fraud/Bribery/Corruption (Medium)
        http_status_code:
          type: integer
          description: >-
            The HTTP status received by the test probe to determine content
            availability.
          example: 200
        date_time_published:
          type: string
          description: Datetime string of when the article was published. Empty if unknown.
          example: '2024-01-15T10:30:00Z'
      required:
        - url
        - title
    ProfileChecklist:
      type: object
      description: >-
        Watchlist and risk screening states and sources. Contains the hit status
        for various risk feeds and detailed breakdown of each hit.
      properties:
        screen:
          $ref: '#/components/schemas/FeedScreen'
          description: Hit status for each feed (true for hit, false for clear).
        hits:
          $ref: '#/components/schemas/FeedHits'
          description: Lists of sources that Minerva found as hits for each feed.
        hits_info:
          type: array
          description: >-
            Detailed breakdown of hits with original source values and match
            scores for each attribute.
          items:
            $ref: '#/components/schemas/ScreeningHitInfo'
      required:
        - screen
        - hits
        - hits_info
    ClientRiskRating:
      type: object
      description: >-
        Customer Risk Rating (CRR) assessment on the profile based on discovered
        data. Provides overall risk score and breakdown of contributing factors.
      properties:
        score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            The customer risk rating score, normalized from 0.0-1.0. Higher
            values indicate higher risk.
          example: 0.75
        label:
          type: string
          enum:
            - High
            - Medium
            - Low
            - None
          description: The risk rating label associated with the score.
          example: High
        factors:
          type: array
          description: >-
            List of criteria factors with their weights and values that comprise
            the total CRR analysis.
          items:
            $ref: '#/components/schemas/ClientRiskRatingFactor'
      required:
        - score
        - label
        - factors
    SourceDetailElement:
      type: object
      description: Metadata about a source providing additional information.
      properties:
        name:
          type: string
          description: The name of the source.
          example: OFAC SDN List
        source_feed:
          type: string
          description: The screening feed the source is associated with.
          example: Sanctions
        flagged_feeds:
          type: array
          description: The screening feeds that the source flagged.
          items:
            type: string
          example:
            - Sanctions
            - PEP
        urls:
          type: array
          description: URLs associated with the source.
          items:
            $ref: '#/components/schemas/UrlInfo'
        description:
          type: string
          description: Description of the source or explanation of why it has no URLs.
          example: Official US Treasury sanctions database
        inferences:
          type: array
          description: Inferences made from the source.
          items:
            $ref: '#/components/schemas/SourceDetailInference'
      required:
        - name
        - source_feed
        - flagged_feeds
        - urls
        - description
        - inferences
    MatchScoreInfo:
      type: object
      description: >-
        Detailed breakdown of the Criteria Match Score for each field provided
        in the search parameters.
      additionalProperties:
        $ref: '#/components/schemas/MatchScoreInfoField'
      example:
        name:
          score: 0.98
          criteria_match_level: exact
          verified: true
        country:
          score: 0.85
          criteria_match_level: close
          verified: true
    DispositionAnnotation:
      type: object
      description: >-
        AI disposition annotation produced by Minerva's Automatic Disposition
        analysis for a screened potential match. Returned as
        `automatic_disposition` when workspace policy allowed the prediction to
        set `review_status` (Full Auto Mode), or as `disposition_hint` when the
        analysis is advisory only (Hint Mode, or a completed analysis that did
        not reach the configured confidence threshold). Both fields are omitted
        for matches screened without automatic disposition.
      properties:
        prediction:
          type: string
          enum:
            - true_positive
            - false_positive
            - undetermined
          description: >-
            Model disposition for the potential match against the searched
            subject. `undetermined` appears only on `disposition_hint`, when the
            analysis completed without reaching a configured confidence
            threshold.
          example: false_positive
        confidence:
          type: number
          minimum: 0
          maximum: 1
          description: Model confidence in the prediction.
          example: 0.95
        analysis_status:
          type: string
          enum:
            - completed
            - failed
          description: >-
            Whether the disposition analysis ran to completion for this match.
            When `failed`, the match is left `unresolved` for normal manual
            review.
          example: completed
        rationale:
          type: string
          description: >-
            Short natural-language explanation of the prediction for analyst
            review.
          example: >-
            The searched subject's occupation and country conflict with the
            listed person.
        evidence_refs:
          type: array
          description: >-
            References to the match payload fields and articles the model relied
            on.
          items:
            type: object
        score_summary:
          type: object
          description: Per-field score breakdown produced by the disposition analysis.
        risk_flags:
          type: array
          description: Risk signals the analysis surfaced while reviewing the evidence.
          items:
            type: string
        signature_version:
          type: string
          description: >-
            Automatic Disposition prompt/signature version used for the
            analysis.
        source:
          type: string
          description: >-
            Screening channel that produced the annotation. Always `direct_api`
            for Direct API searches.
          example: direct_api
        error:
          type: object
          description: >-
            Bounded error metadata, present only when the analysis could not
            complete cleanly for this match.
          properties:
            code:
              type: string
            message:
              type: string
            retryable:
              type: boolean
    SourcedStringSource:
      type: object
      description: >-
        Single unit of data lineage for a sourced string value. Each source
        contributes to the value consensus.
      allOf:
        - $ref: '#/components/schemas/SourceFields'
        - type: object
          properties:
            value:
              type: string
              description: The value reported by this source.
              example: John Smith
          required:
            - value
    CriteriaMatchLevel:
      type: string
      enum:
        - exact
        - close
        - loose
        - none
      description: >-
        Label associated with a match score indicating the closeness of the
        match. Thresholds: exact (>= 0.98), close (>= 0.85), loose (>= 0.75),
        none (< 0.75).
      example: close
    DateObject:
      type: object
      description: A date object containing year, month, and day components.
      properties:
        year:
          type: integer
          description: >-
            The year component of the date. This will always be present if the
            date is known. It will be a 4 digit integer corresponding to a
            calendar year.
          example: 1984
        month:
          type: integer
          minimum: 1
          maximum: 12
          description: >-
            The integer corresponding to the calendar month (1-12). May not be
            present if the month is not known.
          example: 6
        day:
          type: integer
          minimum: 1
          maximum: 31
          description: >-
            The integer corresponding to the calendar day. May not be present if
            the day is not known.
          example: 15
      required:
        - year
    SourcedDateSource:
      type: object
      description: Single unit of data lineage for a sourced date value.
      allOf:
        - $ref: '#/components/schemas/SourceFields'
        - type: object
          properties:
            value:
              $ref: '#/components/schemas/DateObject'
              description: The date value reported by this source.
          required:
            - value
    ProfileSocialUsername:
      type: object
      description: >-
        Social media username associated with the profile, discovered through
        deep learning investigation.
      properties:
        value:
          type: string
          description: The social media username.
          example: john_smith_official
        tag:
          type: string
          description: The name of the social media platform.
          example: Twitter
        sources:
          type: array
          description: Sources that contributed to the consensus value.
          items:
            $ref: '#/components/schemas/SourcedString'
      required:
        - value
    FeedScreen:
      type: object
      description: >-
        Hit status for each feed that was screened. True indicates a
        hit/finding, false indicates clear/no hits.
      properties:
        Sanctions:
          type: boolean
          description: >-
            True if profile is listed on an international sanctions list (OFAC
            SDN, HMT, OSFI Consolidated, etc.).
        PEP:
          type: boolean
          description: >-
            True if profile is a domestic PEP, foreign PEP, RCA of a PEP, head
            of a state-owned corporation, or HIO.
        Criminal:
          type: boolean
          description: >-
            True if profile is determined to be a criminal actor based on
            watchlists (e.g., FBI Terrorism List) or inference.
        Legal:
          type: boolean
          description: True if profile has high risk legal cases involving it.
        News:
          type: boolean
          description: >-
            True if profile has high risk adverse media articles (negative
            sentiment + adverse media risk categories).
        Open Source:
          type: boolean
          description: True if open source investigation found relevant hits.
        Social Media:
          type: boolean
          description: True if social media investigation found relevant hits.
        Registries:
          type: boolean
          description: True if corporate registry searches found relevant hits.
        Ownership:
          type: boolean
          description: True if ownership/beneficial ownership searches found relevant hits.
        Offshore:
          type: boolean
          description: True if offshore entity databases found relevant hits.
    FeedHits:
      type: object
      description: >-
        Lists of source names that were hit for each feed. Only present for
        feeds where screen value is true.
      properties:
        Sanctions:
          type: array
          items:
            type: string
          example:
            - OFAC SDN List
            - EU Consolidated List
        PEP:
          type: array
          items:
            type: string
          example:
            - World Leaders Database
        Criminal:
          type: array
          items:
            type: string
          example:
            - FBI Most Wanted
        Legal:
          type: array
          items:
            type: string
          example:
            - PACER
        News:
          type: array
          items:
            type: string
          example:
            - Reuters
            - BBC News
        Open Source:
          type: array
          items:
            type: string
        Social Media:
          type: array
          items:
            type: string
        Registries:
          type: array
          items:
            type: string
        Ownership:
          type: array
          items:
            type: string
        Offshore:
          type: array
          items:
            type: string
    ScreeningHitInfo:
      type: object
      description: >-
        Detailed breakdown of a screening hit with original source values and
        match scores for each attribute. Helps discern potential match
        identifiers from various risk sources.
      properties:
        source:
          type: string
          description: The name of the source that this hit was triggered from.
          example: OFAC SDN List
        feed:
          type: string
          description: The Minerva data feed that the source belongs to.
          enum:
            - Sanctions
            - PEP
            - News
            - Legal
            - Criminal
          example: Sanctions
        name:
          $ref: '#/components/schemas/ScreeningHitInfoField'
          description: Match attributes of the name that was hit upon from this source.
        occupation:
          $ref: '#/components/schemas/ScreeningHitInfoField'
          description: >-
            The job title reported by the hit source. Present for individual
            profiles only. Match score is 0.0 if not provided in search
            parameters.
        organization:
          $ref: '#/components/schemas/ScreeningHitInfoField'
          description: >-
            The organization reported by the hit source. Present for individual
            profiles only. Match score is 0.0 if not provided in search
            parameters.
        nationality:
          $ref: '#/components/schemas/ScreeningHitInfoField'
          description: >-
            The nationality reported by the hit source. Match score is 0.0 if
            country not provided in search parameters.
        date:
          $ref: '#/components/schemas/ScreeningHitInfoField'
          description: >-
            The date reported by the hit source (format: YYYY-MM-DD, YYYY, or
            YYYY-MM). Match score is 0.0 if date not provided in search
            parameters.
        locations:
          type: array
          description: >-
            Locations reported by the hit source. May contain address, city,
            state, and/or country. Match score is 0.0 if no location provided in
            search parameters.
          items:
            $ref: '#/components/schemas/ScreeningHitInfoField'
      required:
        - source
        - feed
        - name
    ClientRiskRatingFactor:
      type: object
      description: >-
        A single factor that contributed to an overall client risk rating (CRR)
        score.
      properties:
        weight:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            The weight applied to the value when creating the consolidated
            weighted score.
          example: 0.15
        value:
          type: number
          minimum: 0
          maximum: 1
          description: The value of the factor calculated, before weighting was applied.
          example: 0.8
        code:
          type: integer
          description: >-
            Primary key mapping of the factor to the total list of possible
            criteria. Guaranteed to remain the same over time.
          example: 1
        label:
          type: string
          description: >-
            Human-readable context about what this factor represents in the
            weighting scheme.
          example: Sanctions List
        annotation:
          type: string
          description: >-
            Additional notes providing further description about the factor
            value.
          example: Listed on OFAC SDN
      required:
        - weight
        - value
        - code
        - label
    SourceDetailInference:
      type: object
      description: >-
        Details regarding an inference made from a source, such as PEP or
        Criminal inference.
      properties:
        feed:
          type: string
          description: The screening feed that the inference flagged for.
          example: PEP
        reason:
          type: string
          description: The reason the inference was made.
          example: Matched regex pattern for political position
        url:
          type: string
          description: URL linking to the source of the inference data.
          example: https://example.com/article
        field:
          type: string
          description: The field the inference was made on.
          example: Notes
        context:
          type: string
          description: Snippet of text providing context for the inference.
          example: The individual served as Minister of...
      required:
        - feed
        - reason
        - url
        - field
        - context
    MatchScoreInfoField:
      type: object
      description: Match score information for a single search parameter field.
      properties:
        score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Match score from 0.0-1.0 where 1.0 represents a perfect match and
            0.0 represents no match.
          example: 0.95
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: >-
            String label corresponding to the score: "exact" (>= 0.98), "close"
            (>= 0.85), "loose" (>= 0.75), "none" (< 0.75).
        verified:
          type: boolean
          description: >-
            True if the match meets verification requirements: source
            reputation_score >= 7 (trusted) AND criteria_match_level is at least
            "close".
          example: true
      required:
        - score
        - criteria_match_level
        - verified
    SourceFields:
      type: object
      description: Fields that are shared by all source lineage records.
      properties:
        source:
          type: string
          description: The human readable name of the source.
          example: OFAC SDN List
        feed:
          type: string
          description: >-
            The Minerva data feed that this source belongs to. Will be one of
            the 10 supported Minerva data feeds.
          enum:
            - Sanctions
            - PEP
            - Criminal
            - Legal
            - Offshore
            - Ownership
            - Registries
            - Social Media
            - News
            - Open Source
          example: Sanctions
        timestamp:
          $ref: '#/components/schemas/DateObject'
          description: >-
            The timestamp associated with when the data was collected or
            reported.
        inferred:
          type: boolean
          description: >-
            Indicates whether the value was inferred algorithmically (true) or
            reported directly from the source. Inferred values are down-weighted
            in the consensus algorithm.
          example: false
        reputation_score:
          type: integer
          minimum: 0
          maximum: 10
          description: >-
            Score from 0-10 indicating the reputation of the source. A value of
            7 or above indicates "trusted" status where the source is highly
            accredited.
          example: 8
        trusted:
          type: boolean
          description: >-
            Reports whether the reputation score is at or above the threshold
            (7) for the source to be considered trusted.
          example: true
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Score from 0.0-1.0 indicating the closeness of the match between the
            search criteria and this source value.
          example: 0.92
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: Label associated with the match score.
    ScreeningHitInfoField:
      type: object
      description: >-
        Information about the match for a single field from a potential
        screening hit.
      properties:
        value:
          type: string
          description: The value of the field that was matched.
          example: John Smith
        match_score:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            The computed match score between the query parameter and the
            original source value.
          example: 0.95
        criteria_match_level:
          $ref: '#/components/schemas/CriteriaMatchLevel'
          description: The label associated with the match score.
      required:
        - value
        - match_score
        - criteria_match_level
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        The Minerva API key used for this integration. Manage API keys in the
        Minerva dashboard under Administration > Developers.

````