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

# Manual discover camera

> Manually identify a camera on the network



## OpenAPI

````yaml https://api2.rhombussystems.com/api/openapi/public.json post /api/relay/manualDiscoverCamera
openapi: 3.0.1
info:
  contact:
    email: developer@rhombussystems.com
  description: >-
    This API is for use by Rhombus customers and partners.


    ## Authentication


    All requests require two headers:

    - `x-auth-scheme` — The authentication scheme identifier. Use `api-token`
    for standard API key auth, or `partner-api-token` for partner API auth.

    - `x-auth-apikey` — Your Rhombus API key.


    Example:

    ```

    POST /api/camera/getMinimalCameraStateList

    x-auth-scheme: api-token

    x-auth-apikey: YOUR_API_KEY

    Content-Type: application/json

    ```
  title: Rhombus API
  version: '1.0'
servers:
  - description: Production Server
    url: https://api2.rhombussystems.com
security:
  - ApiKeyAuth: []
paths:
  /api/relay/manualDiscoverCamera:
    post:
      tags:
        - Relay Webservice
      summary: Manual discover camera
      description: Manually identify a camera on the network
      operationId: manualDiscoverCamera
      parameters:
        - description: >-
            Authentication scheme identifier. Use `api-token` for standard API
            key authentication, `partner-api-token` for partner API key
            authentication. Must be paired with the `x-auth-apikey` header
            containing your API key.
          example: api-token
          in: header
          name: x-auth-scheme
          required: true
          schema:
            type: string
            default: api-token
            enum:
              - api-token
              - api
              - partner-api-token
              - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/Relay_ManualDiscoverThirdPartyCameraWSRequest
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Relay_ManualDiscoverThirdPartyCameraWSResponse
          description: OK
components:
  schemas:
    Relay_ManualDiscoverThirdPartyCameraWSRequest:
      type: object
      description: >-
        Request object for manually discovering a third-party camera with RTSP
        URL.
      properties:
        locationUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        password:
          type: string
          description: >-
            Password to access the RTSP URL. This field MUST be non-empty if
            trySavedCredentials is false
          example: password123
          nullable: true
        rtspUrl:
          type: string
          description: >-
            The RTSP URL of the third-party camera being manually added. This
            RTSP URL should reference a stream that provides H.264 encoded video
          example: rtsp://192.168.1.100:554/stream1
          nullable: true
        trySavedCredentials:
          type: boolean
          description: >-
            Whether the third-party credentials saved in the account should be
            used when trying to validate whether the provided RTSP URL is valid
          example: false
          nullable: true
        username:
          type: string
          description: >-
            Username to access the RTSP URL. This field MUST be non-empty if
            trySavedCredentials is false
          example: admin
          nullable: true
    Relay_ManualDiscoverThirdPartyCameraWSResponse:
      type: object
      description: >-
        Response object for manually discovering a third-party camera with RTSP
        URL.
      properties:
        error:
          type: boolean
          nullable: true
        errorMsg:
          type: string
          nullable: true
        result:
          $ref: '#/components/schemas/DiscoveredThirdPartyCameraType'
        rtspUrlStatus:
          $ref: '#/components/schemas/UrlStatusEnum'
        warningMsg:
          type: string
          nullable: true
    DiscoveredThirdPartyCameraType:
      type: object
      description: >-
        The imported (discovered) third-party camera. This field is populated
        only if the RTSP URL specified in the import resulted in creation of a
        new discovery or an addition of a RTSP URL to an existing discovery. It
        is null, if the RTSP URL already existed or if the import was not
        successful.
      properties:
        codec:
          type: string
          nullable: true
        createdOn:
          type: string
          format: date-time
          nullable: true
        ipAddress:
          type: string
          nullable: true
        lastVisibleMs:
          type: object
          additionalProperties:
            type: integer
            format: int64
            nullable: true
          nullable: true
        macAddress:
          type: string
          nullable: true
        manufacturer:
          type: string
          nullable: true
        model:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
        onvifPassword:
          type: string
          nullable: true
        onvifProfileToken:
          type: string
          nullable: true
        onvifUsername:
          type: string
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        password:
          type: string
          nullable: true
        rtspEndpoints:
          type: array
          items:
            $ref: '#/components/schemas/RtspEndpoint'
          nullable: true
          uniqueItems: true
        updatedOn:
          type: string
          format: date-time
          nullable: true
        username:
          type: string
          nullable: true
    UrlStatusEnum:
      type: string
      description: Status of the RTSP URL validation
      enum:
        - UNKNOWN
        - NOT_REACHABLE
        - NOT_AUTHENTICATED
        - NOT_SUPPORTED
        - GOOD
    RtspEndpoint:
      type: object
      properties:
        audioSupported:
          type: boolean
          nullable: true
        lastRtspUrlStatus:
          $ref: '#/components/schemas/UrlStatusEnum'
        onvifProfileToken:
          type: string
          nullable: true
        rtspUrl:
          type: string
          nullable: true
        source:
          $ref: '#/components/schemas/RtspEndpointSourceEnum'
        uuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
    RtspEndpointSourceEnum:
      type: string
      enum:
        - USER
        - ONVIF
  securitySchemes:
    ApiKeyAuth:
      description: >-
        Your Rhombus API key. Must be accompanied by the `x-auth-scheme` header
        set to `api-token` (or `partner-api-token` for partner endpoints).
      in: header
      name: x-auth-apikey
      type: apiKey

````