TVU Networks Search API/search/person API

The Search API/search/person API from TVU Networks — 2 operation(s) for search api/search/person.

Operations 2

GET /api/search/v1/i/click List persons detected in a media file by face recognition #
POST /api/search/v1/i/globalnametag Search persons globally by name or ID tags #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tvu-networks-search-api-search-person-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tvu-networks-search-api-search-person-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TVU Networks — Search Search API/search/person API
  description: Search API operations of the TVU Networks public HTTP API, assembled verbatim from the per-endpoint OpenAPI 3.0.1 exports TVU publishes on its own Apifox documentation site (https://docs.tvunetworks.cn/). Each operation body is the provider's own export; only grouping, servers[] and operationId backfill were added by API Evangelist.
  version: 1.0.0
  contact:
    name: TVU Networks
    url: https://www.tvunetworks.com/tvu-developer/
servers:
- url: https://api.tvunetworks.com
  description: Prod Env default server
- url: https://search.tvunetworks.com
  description: Apifox server "TVUSearch"
tags:
- name: Search API/search/person
paths:
  /api/search/v1/i/click:
    get:
      summary: List persons detected in a media file by face recognition
      deprecated: false
      description: 'Returns a paginated list of persons identified via face recognition within the specified media recording and time window. Identify the recording by ''ph_path'' (required); optionally narrow to a specific TVU device using ''peerid''. Each result includes the person''s ID, name, thumbnail, and detected timestamps. Sort options: sort=1 ranks persons by how frequently they appear (useful for recurrence scoring); sort=2 lists persons in the order they first appear as on-screen guests. Session ID required.'
      tags:
      - Search API/search/person
      parameters:
      - name: userid
        in: query
        description: Authenticated user ID
        required: true
        example: soffeeshu4@tvu.com
        schema:
          type: string
      - name: sessionid
        in: query
        description: Valid session ID for authentication
        required: true
        schema:
          type: string
      - name: uid
        in: query
        description: Unique media file identifier
        required: false
        example: 05-FFFFFFF11015C601-0C206C452A419A78
        schema:
          type: string
      - name: ph_path
        in: query
        description: Physical path of the media file
        required: true
        example: mp4/FFFFFFF00015C633/55524C204558544C0000018F6581E6E4/240530-05-37-41-157/2/rt.mpd
        schema:
          type: string
      - name: pathtype
        in: query
        description: Path type of the media file
        required: true
        example: mpd
        schema:
          type: string
      - name: peerid
        in: query
        description: Peer node ID of the source device
        required: false
        example: FFFFFFF00015C633
        schema:
          type: string
      - name: starttime
        in: query
        description: Search start time in milliseconds since epoch
        required: false
        example: 1717055940297
        schema:
          type: integer
      - name: endtime
        in: query
        description: Search end time in milliseconds since epoch
        required: false
        example: 1717059381397
        schema:
          type: integer
      - name: pageNum
        in: query
        description: Page number (1-based)
        required: false
        example: 1
        schema:
          type: integer
      - name: pageSize
        in: query
        description: Number of results per page
        required: false
        example: 999
        schema:
          type: integer
      - name: sort
        in: query
        description: 'Sort method: 1=by recurrence, 2=by in-guest order'
        required: false
        example: 1
        schema:
          type: integer
      - name: SID
        in: header
        description: ''
        example: 92575d36dcb631ac94745e6b157de17a5a13d65b31e44869f06854ab928dd80235d4daae8696b4a92a7be5f802c45a219648701fc9ca59f44e9c0f022d5d38a7
        schema:
          type: string
          default: 92575d36dcb631ac94745e6b157de17a5a13d65b31e44869f06854ab928dd80235d4daae8696b4a92a7be5f802c45a219648701fc9ca59f44e9c0f022d5d38a7
      responses:
        '200':
          description: 'Successful response; check code field for logical results: 0=success, 1001=invalid request, 1002=invalid session, 1404=access denied'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.PersonListClickResp'
              example:
                code: 0
                message: succ
                data:
                  size: 1
                  total: 1
                  list:
                  - name: ''
                    person_id: 1710142217249mbzk5zx0
                    path: FFFFFFF00015C633_1717048728819.jpg
                    position:
                      height: 271
                      left: 1076
                      top: 118
                      width: 186
                    peer_id: FFFFFFF00015C633
                    timestamp: 1717055943701
                    face_num: 1
                    last_update_ts: 1717055943701
                    tslist:
                    - 1717055943701
                    tracklist:
                    - - 1717055943701
                      - 1717055944101
                    group_id: 00fe20a2d2d84093b304f0d54d4bedda
                    total_track_duration: 1000
                  host_person:
                    name: ''
                    total_track_duration: 0
          headers: {}
          x-apifox-name: ''
        '400':
          description: Malformed HTTP request or parse error
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                x-apifox-orders: []
                properties: {}
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
      security: []
      x-apifox-folder: Search API/search/person
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/4126232/apis/api-468959089-run
      operationId: List_persons_detected_in_a_media_file_by_face_recognition_468959089
      x-source-doc: https://docs.tvunetworks.cn/api-468959089.md
  /api/search/v1/i/globalnametag:
    post:
      summary: Search persons globally by name or ID tags
      deprecated: false
      description: Searches for named persons across all accessible groups and data sources. Accepts a free-text name query (e.g. 'John Smith') and/or a list of known person IDs as tag filters to narrow results. Unlike the group-scoped name search, this endpoint queries the global person index and returns matches from any group library accessible to the caller. Each result includes person profile metadata. Pagination via pageNum/pageSize. Session ID required.
      tags:
      - Search API/search/person
      parameters:
      - name: SID
        in: header
        description: ''
        example: 92575d36dcb631ac94745e6b157de17a5a13d65b31e44869f06854ab928dd80235d4daae8696b4a92a7be5f802c45a219648701fc9ca59f44e9c0f022d5d38a7
        schema:
          type: string
          default: 92575d36dcb631ac94745e6b157de17a5a13d65b31e44869f06854ab928dd80235d4daae8696b4a92a7be5f802c45a219648701fc9ca59f44e9c0f022d5d38a7
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/models.SearchPersonNameWithTagsReq'
            example:
              query: ROBINSON
              size: 20
              userid: shorvath@newsnationnow.com
              sessionid: 1C0C49E66DAC4CEE941EF70F77A94A9F
              tsrange:
                starttime: 1775684026048
                endtime: 1778276026048
              tags:
                personids: []
              permission:
                objectSources:
                - '1031568072126906368'
                - '1031567701400764416'
                enable: true
      responses:
        '200':
          description: 'Successful response; check code field for logical results: 0=success, 1001=invalid request, 1002=invalid session, 1404=access denied'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.SearchPersonNameWithTagsResp'
              example:
                code: 0
                message: succ
                data:
                  host_person:
                    name: ''
                  list:
                  - access:
                      peerlist:
                      - FFFFFFF00001B200
                    asset_num: 1
                    face_num: 2
                    group_id: b7f47630d47c4479aff16b9e1862e77d
                    name: Amy Robinson
                    path: FFFFFFF00001B200_1721098514284.jpg
                    peer_id: FFFFFFF00001B200
                    person_id: 1721098512007fkpmi32n
                    position:
                      height: 167
                      left: 1330
                      top: 364
                      width: 124
                    timestamp: 1721098514284
                  - access:
                      peerlist:
                      - FFFFFFF00001B203
                    asset_num: 1
                    face_num: 51
                    group_id: b7f47630d47c4479aff16b9e1862e77d
                    name: Eartha Robinson
                    path: FFFFFFF00001B203_1714742713669.jpg
                    peer_id: FFFFFFF00001B203
                    person_id: 1714742710657872ut2gm
                    position:
                      height: 183
                      left: 439
                      top: 144
                      width: 135
                    timestamp: 1714742713669
                  size: 4
                  total: 4
          headers: {}
          x-apifox-name: ''
        '400':
          description: Malformed HTTP request or parse error
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                x-apifox-orders: []
                properties: {}
                x-apifox-ignore-properties: []
          headers: {}
          x-apifox-name: ''
      security: []
      x-apifox-folder: Search API/search/person
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/4126232/apis/api-468959090-run
      operationId: Search_persons_globally_by_name_or_ID_tags_468959090
      x-source-doc: https://docs.tvunetworks.cn/api-468959090.md
components:
  schemas:
    models.SearchLocation:
      type: object
      properties:
        br:
          type: string
        tl:
          type: string
      x-apifox-orders:
      - br
      - tl
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    controllers.SearchPersonNameWithTagsResp:
      type: object
      properties:
        code:
          description: 'Response code: 0=success, 1001=invalid request, 1002=invalid session, 1404=access denied'
          type: integer
          examples:
          - 0
        data:
          description: return data, if exists
          allOf:
          - $ref: '#/components/schemas/controllers.ReturnData'
        message:
          description: Human-readable result message
          type: string
          examples:
          - succ
      x-apifox-orders:
      - code
      - data
      - message
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.GpsInfo:
      type: object
      properties:
        distance:
          type: number
        lat:
          type: number
        lon:
          type: number
      x-apifox-orders:
      - distance
      - lat
      - lon
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    controllers.PersonListClickResp:
      type: object
      properties:
        code:
          description: 'Response code: 0=success, 1001=invalid request, 1002=invalid session, 1404=access denied'
          type: integer
          examples:
          - 0
        data:
          description: return data, if exists
          allOf:
          - $ref: '#/components/schemas/controllers.ReturnData'
        message:
          description: Human-readable result message
          type: string
          examples:
          - succ
      x-apifox-orders:
      - code
      - data
      - message
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.SearchTsRange:
      type: object
      properties:
        endtime:
          type: integer
          examples:
          - 1778304241635
        field:
          type: string
        starttime:
          type: integer
          examples:
          - 1778304121635
      x-apifox-orders:
      - endtime
      - field
      - starttime
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    controllers.ReturnData:
      type: object
      properties:
        host_person:
          $ref: '#/components/schemas/models.PersonReturnData'
        list:
          type: array
          items:
            type: string
        size:
          type: integer
          examples:
          - 1
        total:
          type: integer
          examples:
          - 1
      x-apifox-orders:
      - host_person
      - list
      - size
      - total
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.SearchTags:
      type: object
      properties:
        CustomSourceSort:
          description: Custom sort order for sources, comma-separated
          type: string
        favorite:
          type: integer
        feature:
          type: array
          items:
            type: string
        geoinfo:
          type: string
        gpsinfo:
          $ref: '#/components/schemas/models.GpsInfo'
        liveSources:
          description: 'Sort by source status, first priority: sources actively ingesting (have ongoing events)'
          type: array
          items:
            type: string
        location:
          $ref: '#/components/schemas/models.SearchLocation'
        noInputSources:
          description: 'Sort by source status, third priority: online sources with no input'
          type: array
          items:
            type: string
        objectEvents:
          description: events
          type: array
          items:
            type: string
        objectGeo:
          description: geo
          type: array
          items:
            type: string
        objectGroupIds:
          description: Group ID list for object search
          type: array
          items:
            type: string
          examples:
          - - bc3a83594dcd41288c52dac3c552da3d
        objectSources:
          description: sources
          type: array
          items:
            type: string
          examples:
          - - '1447853763061747712'
        objectTags:
          description: object tags
          type: array
          items:
            type: string
        objectUserIds:
          description: User ID list for object search
          type: array
          items:
            type: string
          examples:
          - - 4668211d13424faea1677b51810cb488
        onlineSources:
          description: 'Sort by source status, second priority: online sources with no ongoing event'
          type: array
          items:
            type: string
        personids:
          type: array
          items:
            type: string
        status:
          description: ingesting or live or other
          type: integer
        storyids:
          type: array
          items:
            type: string
        uids:
          type: array
          items:
            type: string
      x-apifox-orders:
      - CustomSourceSort
      - favorite
      - feature
      - geoinfo
      - gpsinfo
      - liveSources
      - location
      - noInputSources
      - objectEvents
      - objectGeo
      - objectGroupIds
      - objectSources
      - objectTags
      - objectUserIds
      - onlineSources
      - personids
      - status
      - storyids
      - uids
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.SearchPersonNameWithTagsReq:
      type: object
      properties:
        durationRange:
          $ref: '#/components/schemas/models.SearchDurationRange'
        pageNum:
          type: integer
          examples:
          - 1
        pageSize:
          type: integer
          examples:
          - 8
        permission:
          $ref: '#/components/schemas/models.AccessPermission'
        query:
          type: string
          examples:
          - ROBINSON
        searchLang:
          type: string
        sessionid:
          type: string
          examples:
          - 1C0C49E66DAC4CEE941EF70F77A94A9F
        size:
          type: integer
          examples:
          - 20
        slugtag:
          type: boolean
        sort:
          type: integer
          examples:
          - 1
        source:
          type: array
          items:
            type: string
          examples:
          - - source
        tags:
          $ref: '#/components/schemas/models.SearchTags'
        tsrange:
          $ref: '#/components/schemas/models.SearchTsRange'
        userid:
          type: string
          examples:
          - shorvath@newsnationnow.com
      x-apifox-orders:
      - durationRange
      - pageNum
      - pageSize
      - permission
      - query
      - searchLang
      - sessionid
      - size
      - slugtag
      - sort
      - source
      - tags
      - tsrange
      - userid
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.SearchDurationRange:
      type: object
      properties:
        durationEnd:
          type: integer
        durationStart:
          type: integer
      x-apifox-orders:
      - durationEnd
      - durationStart
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.AccessPermission:
      type: object
      properties:
        black:
          type: array
          items:
            type: string
        enable:
          type: boolean
          examples:
          - true
        enableown:
          type: boolean
        objectSources:
          description: New object permission sources
          type: array
          items:
            type: string
          examples:
          - - '1031568072126906368'
        private:
          type: array
          items:
            type: string
        public:
          type: array
          items:
            type: string
      x-apifox-orders:
      - black
      - enable
      - enableown
      - objectSources
      - private
      - public
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
    models.PersonReturnData:
      type: object
      properties:
        asset_num:
          type: integer
        face_num:
          type: integer
          examples:
          - 1
        group_id:
          type: string
          examples:
          - 00fe20a2d2d84093b304f0d54d4bedda
        highlight:
          type: string
        last_update_ts:
          type: integer
          examples:
          - 1717055943701
        name:
          type: string
          examples:
          - ''
        object_media:
          type: integer
        path:
          type: string
          examples:
          - FFFFFFF00015C633_1717048728819.jpg
        peer_id:
          type: string
          examples:
          - FFFFFFF00015C633
        person_id:
          type: string
          examples:
          - 1710142217249mbzk5zx0
        position:
          type: string
        recfile_path:
          type: string
        sourceObjectId:
          type: string
        tag:
          type: string
        timestamp:
          type: integer
          examples:
          - 1717055943701
        total_track_duration:
          type: integer
          examples:
          - 1000
        tracklist:
          description: the first value is the emerged time of the person, the second value is the disappearred time.
          type: array
          items:
            type: array
            items:
              type: integer
              format: int64
        tslist:
          type: array
          items:
            type: integer
        uid:
          type: string
      x-apifox-orders:
      - asset_num
      - face_num
      - group_id
      - highlight
      - last_update_ts
      - name
      - object_media
      - path
      - peer_id
      - person_id
      - position
      - recfile_path
      - sourceObjectId
      - tag
      - timestamp
      - total_track_duration
      - tracklist
      - tslist
      - uid
      x-apifox-ignore-properties: []
      x-apifox-folder: ''
  securitySchemes:
    bearer:
      type: bearer
      scheme: bearer
    apikey-header-Authorization:
      type: apikey
      in: header
      name: Authorization
    apikey-header-SID:
      type: apikey
      in: header
      name: SID
    tvu:
      type: bearer
      scheme: bearer