Eagle Eye Networks Jobs API

All core operations on jobs.

Operations 3

GET /jobs List jobs #
GET /jobs/{jobId} Get job #
DELETE /jobs/{jobId} Delete job #

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-auth-settings-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-auth-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-client-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-alert-action-rule-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-alert-action-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-event-alert-condition-rule-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-alert-action-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-event-alert-condition-rule-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-event-rules-fields-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-ptz-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-add-camera-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-update-bulk-camera-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-ptz-position-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-camera-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-tunnel-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-event-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-alert-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-notification-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-filter-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-event-metric-query-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-events-by-type-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-location-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-layout-for-single-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-layout-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-paginated-location-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-paginated-location-descendants-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-paginated-floor-plans-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-download-details-with-includes-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-video-summary-export-details-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-job-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-copy-export-body-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-paginated-file-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-create-export-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-token-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-access-token-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-application-oauth-client-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-application-oauth-client-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-application-oauth-client-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-application-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-application-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-paginated-oauth-client-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-add-user-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-role-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-user-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-user-self-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-api-user-main-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-edition-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-fields-data-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-alert-condition-rule-untagged-for-post-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-alert-condition-rule-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-vehicle-list-untagged-record-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-vehicle-list-meta-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-lpr-vehicle-list-untagged-record-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-search-event-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-paginated-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-region-info-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-actor-info-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/eagle-eye-networks/refs/heads/main/json-schema/eagle-eye-networks-person-attribute-list-schema.json

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/eagle-eye-networks:eagle-eye-networks-jobs-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

eagle-eye-networks-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: MEDIA Jobs API
  version: 3.0.0
  description: All core operations on jobs.
servers:
- url: https://{BaseUrl}/api/v3.0
  description: Eagle Eye Networks API Server
  variables:
    BaseUrl:
      default: api.cxxx.eagleeyenetworks.com
      description: HTTPS Base url to use for all API calls, retrieved from https://api.eagleeyenetworks.com/api/v3.0/clientSettings
security:
- bearerAuth: []
tags:
- name: Jobs
  description: All core operations on jobs.
paths:
  /jobs:
    get:
      operationId: listJobs
      description: List Jobs. Filtering by userId, type, state namespace, createTimestamp, updateTimestamp, expireTimestamp.
      parameters:
      - $ref: '#/components/parameters/pageToken'
      - $ref: '#/components/parameters/pageSize'
      - $ref: '#/components/parameters/sort'
      - $ref: '#/components/parameters/requiredUserId'
      - $ref: '#/components/parameters/type'
      - $ref: '#/components/parameters/state'
      - $ref: '#/components/parameters/namespace'
      - $ref: '#/components/parameters/createTimestamp__gte'
      - $ref: '#/components/parameters/createTimestamp__lte'
      - $ref: '#/components/parameters/updateTimestamp__gte'
      - $ref: '#/components/parameters/updateTimestamp__lte'
      - $ref: '#/components/parameters/expireTimestamp__gte'
      - $ref: '#/components/parameters/expireTimestamp__lte'
      - $ref: '#/components/parameters/state__in'
      tags:
      - Jobs
      responses:
        '200':
          description: List Jobs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedJobResponse'
        '400':
          $ref: '#/components/responses/validationError'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: List jobs
      x-summary-source: derived
  /jobs/{jobId}:
    parameters:
    - in: path
      name: jobId
      schema:
        type: string
        format: uuid
      required: true
    get:
      operationId: getJob
      description: Get a single Job
      tags:
      - Jobs
      responses:
        '200':
          description: Get a single Job
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
        '400':
          $ref: '#/components/responses/validationError'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/resourceNotFound'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Get job
      x-summary-source: derived
    delete:
      operationId: deleteJob
      description: Deletes a Job regardless of state.
      tags:
      - Jobs
      responses:
        '204':
          description: Job deleted.
        '400':
          $ref: '#/components/responses/validationError'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/resourceNotFound'
        '500':
          $ref: '#/components/responses/internalServerError'
      summary: Delete job
      x-summary-source: derived
components:
  schemas:
    ErrorInfoExceptionDetail:
      properties:
        type:
          description: A string enum describing the type of detail object.
          type: string
          enum:
          - errorInfo
        reason:
          description: 'The reason for the error. This is a constant value that identifies the proximate cause of the

            error. Error reasons are unique within a particular domain of errors.

            '
          type: string
          enum:
          - unauthenticated
          - unexpectedArgument
          - missingRequiredArgument
          - wrongArgumentValue
          - invalidPermission
          - wrongEdition
          - wrongAccountType
          - resourceNotFound
          - endpointNotFound
          - methodNotSupported
          - unexpectedError
          - acceptNotSupported
          - alreadyExists
          - foreignKeyConflict
          - childDevicesExist
          - contentNotSupported
          - deadlineExpired
          - tooManyRequests
          - deviceUnavailable
          - serviceUnavailable
          - invalidJSON
          - resourceLocked
          - notSupportedOnBridge
          - outOfRetention
          - deviceIdentificationFailed
          - credentialValidationFailed
          - credentialSetupFailed
          - localUrlValidationFailed
          - hwRegistrationFailed
          - failedAddingCameraAfterValidation
          - neverConnected
          - reconnectFailed
          - unsupportedModel
          - purged
          - userBlocked
          - userTemporarilyBlocked
          - quotaExceeded
          - alreadyValidated
          - reAuthenticationRequired
          - badGateway
        domain:
          description: 'Logical grouping to which the "reason" belongs

            '
          type: string
        metadata:
          $ref: '#/components/schemas/ExceptionMetadata'
    JobStarted:
      description: Example of a State Started Job
      allOf:
      - type: object
        required:
        - state
        - detailedState
        - progress
        - result
        - error
        properties:
          state:
            type: string
            enum:
            - started
          detailedState:
            $ref: '#/components/schemas/DetailedState'
          progress:
            $ref: '#/components/schemas/JobProgress'
          result:
            $ref: '#/components/schemas/NullObject'
          error:
            $ref: '#/components/schemas/NullObject'
      - $ref: '#/components/schemas/JobBase'
    JobFailure:
      description: Example of a State Failure Job
      allOf:
      - type: object
        required:
        - state
        - detailedState
        - progress
        - result
        - error
        properties:
          state:
            type: string
            enum:
            - failure
          detailedState:
            $ref: '#/components/schemas/DetailedState'
          progress:
            type: number
            minimum: 0
            maximum: 0
          result:
            $ref: '#/components/schemas/NullObject'
          error:
            $ref: '#/components/schemas/ApiV3Error'
      - $ref: '#/components/schemas/JobBase'
    ExceptionDetail:
      type: object
      oneOf:
      - $ref: '#/components/schemas/ErrorInfoExceptionDetail'
      - $ref: '#/components/schemas/BadRequestExceptionDetail'
      - $ref: '#/components/schemas/ResourceInfoExceptionDetail'
      discriminator:
        propertyName: type
        mapping:
          errorInfo: '#/components/schemas/ErrorInfoExceptionDetail'
          badRequest: '#/components/schemas/BadRequestExceptionDetail'
          resourceInfo: '#/components/schemas/ResourceInfoExceptionDetail'
      properties:
        type:
          description: A string enum describing the type of detail object.
          type: string
          enum:
          - errorInfo
          - badRequest
          - resourceInfo
      required:
      - type
    JobResultFiles:
      required:
      - files
      properties:
        files:
          type: array
          items:
            $ref: '#/components/schemas/JobResultFile'
    DetailedState:
      type: object
      description: 'This object allows for a flexible way of returning detailed progress information to the end user.  It is allowed to be null, otherwise the format of data is dynamic.  This object is allowed to be present on a Job of any state except pending and revoked.

        '
      example:
        totalItems: 10
        currentItems: 4
    NullObject:
      description: Null object
      type:
      - object
      - 'null'
    ApiV3Error:
      type: object
      properties:
        code:
          description: HTTP code defined in EEN Standard Code Values
          type: integer
        status:
          description: A string enum describing the code
          type: string
          enum:
          - cancelled
          - unknown
          - invalidArgument
          - deadlineExceeded
          - notFound
          - conflict
          - permissionDenied
          - resourceExhausted
          - failedPrecondition
          - aborted
          - outOfRange
          - unimplemented
          - internal
          - unavailable
          - dataLoss
          - unauthenticated
          - mediaTypeNotSupported
          - acceptNotSupported
          - methodNotSupported
          - tooManyRequests
          - badGateway
        message:
          description: Developer friendly human readable error message in English
          type: string
        details:
          description: An array of extensible objects that define error information
          type: array
          items:
            $ref: '#/components/schemas/ExceptionDetail'
      required:
      - code
      - status
      - message
      - details
    UserId:
      type: string
      description: 'User that the Job runs under and/or for.  In the case a regular user invokes the POST /jobs endpoint, this is their user ID.

        '
      example: cafe0010
      x-faker:
        helpers.arrayElement:
        - - cafe0010
    Job:
      oneOf:
      - $ref: '#/components/schemas/JobStarted'
      - $ref: '#/components/schemas/JobPending'
      - $ref: '#/components/schemas/JobSuccess'
      - $ref: '#/components/schemas/JobFailure'
      - $ref: '#/components/schemas/JobRevoked'
      discriminator:
        propertyName: state
        mapping:
          started: '#/components/schemas/JobStarted'
          pending: '#/components/schemas/JobPending'
          success: '#/components/schemas/JobSuccess'
          failure: '#/components/schemas/JobFailure'
          revoked: '#/components/schemas/JobRevoked'
    JobResultText:
      description: 'A result that is only raw text.

        '
      type: object
      properties:
        text:
          type: string
          x-faker:
            dataType: lorem.sentence
      required:
      - text
    JobProgress:
      type: number
      minimum: 0
      maximum: 1
      description: Job percent complete expressed as a float
      x-faker:
        datatype.float:
          min: 0
          max: 1
    BadRequestExceptionDetail:
      properties:
        type:
          description: A string enum describing the type of detail object.
          type: string
          enum:
          - badRequest
        argumentViolations:
          type: array
          items:
            $ref: '#/components/schemas/ArgumentViolation'
    JobTypeId:
      type: string
      example: reports.user-permissions
      description: 'Concatenation of JobType namespace and a name which forms a unique ID. Type determines what kind of Job is run.

        '
      x-faker:
        random.word: null
    JobResultNull:
      description: 'A null result.  Used for JobTypes that don''t return any output and simply indicate their success or failure via the Job state.  Will appear as "result": null in JSON, the same as if the Job was not in a success state.

        '
    JobBase:
      required:
      - id
      - type
      - namespace
      - arguments
      - userId
      - createTimestamp
      - updateTimestamp
      - expireTimestamp
      properties:
        id:
          type: string
          format: uuid
        type:
          $ref: '#/components/schemas/JobTypeId'
        namespace:
          $ref: '#/components/schemas/JobNamespace'
        arguments:
          $ref: '#/components/schemas/JobArguments'
        userId:
          $ref: '#/components/schemas/UserId'
        scheduleTimestamp:
          allOf:
          - $ref: '#/components/schemas/NullableDateTimeBase'
          - description: When the Job is/was expected to run.  Null when the Job was 'on-demand'.  Not changeable.
        createTimestamp:
          allOf:
          - $ref: '#/components/schemas/DateTimeBase'
          - description: When the Job was created.  Not changeable.
        updateTimestamp:
          allOf:
          - $ref: '#/components/schemas/DateTimeBase'
          - description: When the Job was updated.  Not directly changeable by user.
        expireTimestamp:
          allOf:
          - $ref: '#/components/schemas/DateTimeBase'
          - description: 4 weeks in the future from when the Job was created.  Not changeable by user.
    JobRevoked:
      description: Example of a State Revoked (cancelled) Job
      allOf:
      - type: object
        required:
        - state
        - detailedState
        - progress
        - result
        - error
        properties:
          state:
            type: string
            enum:
            - revoked
          detailedState:
            $ref: '#/components/schemas/NullObject'
          progress:
            type: number
            minimum: 0
            maximum: 0
          result:
            $ref: '#/components/schemas/NullObject'
          error:
            $ref: '#/components/schemas/NullObject'
      - $ref: '#/components/schemas/JobBase'
    JobState:
      type: string
      description: 'State of the Job.  When updating a Job, appropriate state changes are enforced. - Pending Jobs can be updated to any state. - Started Jobs can be updated to failure, success, or revoked. - Failure Jobs cannot be updated. - Success Jobs cannot be updated. - Revoked Jobs cannot be updated. When a Job is revoked, the worker is notified through any communication the worker performs that needs to touch the Job resource.  For example, when the worker is trying to add a result or update progress through the API, it will receive an error which should result in termination of the work.  This error will be a 400 or 500 error. Delete Jobs will interrupt the worker using the same methods (404 error, etc). Uses Celery task state conventions: https://docs.celeryq.dev/en/stable/reference/celery.states.html#misc

        '
      enum:
      - pending
      - started
      - failure
      - success
      - revoked
    NullableDateTimeBase:
      allOf:
      - $ref: '#/components/schemas/DateTimeBase'
    JobResultFile:
      type: object
      required:
      - name
      - size
      - mimetype
      - url
      - description
      properties:
        name:
          type: string
          x-faker: system.fileName
        size:
          type: integer
          minimum: 1
          x-faker:
            dataType: datatype.bigInt
            options:
              min: 1
              max: 2147483648
        mimetype:
          type: string
          x-faker: system.mimeType
        url:
          type: string
          x-faker: image.abstract
        description:
          type: string
          x-faker:
            helpers.arrayElement:
            - - User Permissions Report
              - Camera Settings Report
    JobPending:
      description: Example of a State Pending Job
      allOf:
      - type: object
        required:
        - state
        - detailedState
        - progress
        - result
        - error
        properties:
          state:
            type: string
            enum:
            - pending
          detailedState:
            $ref: '#/components/schemas/NullObject'
          progress:
            type: number
            minimum: 0
            maximum: 0
          result:
            $ref: '#/components/schemas/NullObject'
          error:
            $ref: '#/components/schemas/NullObject'
      - $ref: '#/components/schemas/JobBase'
    ResourceInfoExceptionDetail:
      properties:
        type:
          description: A string enum describing the type of detail object.
          type: string
          enum:
          - resourceInfo
        resource:
          description: Referenced resource type, eg "cameras", "bridges", or "locations".
          type: string
        ids:
          type: array
          description: Identities of resources
          items:
            type: string
    JobArguments:
      type:
      - object
      - 'null'
      description: Variable data for each type of job, specified in argumentSchema of the Get Job Types API in JSON Schema format. Empty object or null is an acceptable value when no arguments are required.
      example:
        timeRangeSelect: day
    timestamp:
      type: string
      format: date-time
      example: '2021-04-22T00:00:00.000+00:00'
      readOnly: true
    PaginatedJobResponse:
      allOf:
      - $ref: '#/components/schemas/PaginatedResponse'
      - type: object
        properties:
          results:
            type: array
            items:
              $ref: '#/components/schemas/Job'
    ArgumentViolation:
      properties:
        argumentName:
          type: string
          description: Name of the argument
        description:
          type: string
          description: Description of the violation
    JobSuccess:
      description: Example of a State Success Job
      allOf:
      - type: object
        required:
        - state
        - detailedState
        - progress
        - result
        - error
        properties:
          state:
            type: string
            enum:
            - success
          detailedState:
            $ref: '#/components/schemas/DetailedState'
          progress:
            type: number
            minimum: 1
            maximum: 1
          result:
            type: object
            oneOf:
            - $ref: '#/components/schemas/JobResultFiles'
            - $ref: '#/components/schemas/JobResultText'
            - $ref: '#/components/schemas/JobResultNull'
          error:
            $ref: '#/components/schemas/NullObject'
      - $ref: '#/components/schemas/JobBase'
    ExceptionMetadata:
      properties:
        path:
          description: Path of the request
          type: string
        method:
          description: Method of the request
          type: string
    PaginatedResponse:
      type: object
      description: 'Used to wrap results for a paginated response, containing information on how to retrieve further pages and, if  available, the total number of results.

        '
      properties:
        nextPageToken:
          type:
          - string
          - 'null'
          readOnly: true
          description: 'Token to retrieve the next page. The value of this token is passed into the field pageToken.  This value can be null if there is no next page.

            '
        prevPageToken:
          type:
          - string
          - 'null'
          readOnly: true
          description: 'Token to retrieve the previous page. The value of this token is passed into the field pageToken.  This value can be null of there is no previous page.

            '
        totalSize:
          type:
          - integer
          - 'null'
          minimum: 0
          readOnly: true
          description: 'The number of resource entries being returned from the result set.  This can be omitted if the API endpoint does not have total size information.

            '
        results:
          type: array
          readOnly: true
          description: The result set from a collection API call.
          items:
            type: object
      required:
      - nextPageToken
      - prevPageToken
      - results
    DateTimeBase:
      type: string
      format: date-time
      example: '2020-01-01T00:00:00.000Z'
      description: ISO-8601 (RFC 3339)
      x-faker:
        date.between:
        - '2020-01-01T00:00:00.000+00:00'
        - '2030-01-01T00:00:00.000+00:00'
    JobNamespace:
      type: string
      example: reports
      description: 'Jobs with common concerns are grouped according to their namespace. For example, Reports has it''s own reports namespace to make filtering and finding report type jobs easier.

        '
      x-faker:
        helpers.arrayElement:
        - - reports
          - jobs
          - export
  parameters:
    updateTimestamp__gte:
      in: query
      name: updateTimestamp__gte
      description: Minimum timestamp for update date.
      required: false
      schema:
        $ref: '#/components/schemas/timestamp'
    expireTimestamp__gte:
      in: query
      name: expireTimestamp__gte
      description: Minimum timestamp for expire date.
      required: false
      schema:
        $ref: '#/components/schemas/timestamp'
    namespace:
      in: query
      name: namespace
      description: 'Filter by Jobs.namespace

        '
      required: false
      schema:
        $ref: '#/components/schemas/JobNamespace'
    type:
      in: query
      name: type
      description: The stream type of the device used to generate the media.
      required: true
      schema:
        type: string
        enum:
        - preview
        - main
    requiredUserId:
      in: query
      name: userId
      description: 'Filter by Jobs.userId.  REQUIRED.

        '
      required: true
      example: cafe0010
      x-faker:
        helpers.arrayElement:
        - - cafe0010
      schema:
        $ref: '#/components/schemas/UserId'
    pageSize:
      in: query
      name: pageSize
      description: 'The number of entries to return per page. The maximum range of valid page sizes is documented with minimum and  maximum values, but the range might be further limited dynamically based on the requested information, account, and system status. Values outside of the (dynamic) allowed range will not result in an error, but will be clamped to the nearest limit. Thus, logic to detect the last page should not be based on comparing the requested size with the received size, but on the existence of a `nextPageToken` value.

        '
      example: 100
      required: false
      schema:
        type: integer
        minimum: 1
        maximum: 500
        default: 100
    sort:
      in: query
      name: sort
      description: List of fields that should be sorted. Use "-" and the field name to specify descending results. Use "+" and the field name to specify ascending results.
      schema:
        type: array
        default:
        - -createTimestamp
        items:
          type: string
          enum:
          - -createTimestamp
          - -updateTimestamp
          - -expireTimestamp
          - -state
          - +createTimestamp
          - +updateTimestamp
          - +expireTimestamp
          - +state
      style: form
      explode: false
    updateTimestamp__lte:
      in: query
      name: updateTimestamp__lte
      required: false
      description: Maximum timestamp for update date.
      schema:
        $ref: '#/components/schemas/timestamp'
    createTimestamp__lte:
      in: query
      name: createTimestamp__lte
      required: false
      description: Maximum timestamp for creation date.
      schema:
        $ref: '#/components/schemas/timestamp'
    state__in:
      in: query
      name: state__in
      description: 'Filter Jobs.state to those having all given state

        '
      required: false
      schema:
        type: array
        items:
          enum:
          - pending
          - started
          - failure
          - success
          - revoked
    state:
      in: query
      name: state
      description: 'Filter by Jobs.state

        '
      required: false
      schema:
        $ref: '#/components/schemas/JobState'
    createTimestamp__gte:
      in: query
      name: createTimestamp__gte
      description: Minimum timestamp for creation date.
      required: false
      schema:
        $ref: '#/components/schemas/timestamp'
    pageToken:
      in: query
      name: pageToken
      description: 'Token string value that references a page for pagination. This value is received when retrieving the first page in the `nextPageToken` and `prevPageToken` fields.

        When a pageToken is provided, the backend remembers search parameters from the original request, so search  parameters that affect the result set or order are optional and will be ignored if provided. Representation  parameters like `include` should still be applied.

        '
      example: b2Zmc2V0PTEwJmxpbWl0PTEw
      required: false
      schema:
        type: string
    expireTimestamp__lte:
      in: query
      name: expireTimestamp__lte
      required: false
      description: Maximum timestamp for expire date.
      schema:
        $ref: '#/components/schemas/timestamp'
  responses:
    forbidden:
      description: You have no permission to access the specified resource.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiV3Error'
          examples:
            invalidPermission:
              value:
                code: 403
                status: permissionDenied
                message: The client caller does not have permission for the specified operation
                details:
                - type: errorInfo
                  reason: invalidPermission
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
            wrongEdition:
              value:
                code: 403
                status: permissionDenied
                message: This feature is not enabled for the account
                details:
                - type: errorInfo
                  reason: wrongEdition
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/locations
            wrongAccountType:
              value:
                code: 403
                status: permissionDenied
                message: This feature is only available for end users
                details:
                - type: errorInfo
                  reason: wrongAccountType
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/locations
    resourceNotFound:
      description: Referenced resource could not be found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiV3Error'
          examples:
            endpointNotFound:
              value:
                code: 404
                status: notFound
                message: The API endpoint was not found
                details:
                - type: errorInfo
                  reason: endpointNotFound
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
            resourceNotFound:
              value:
                code: 404
                status: notFound
                message: The resource was not found
                details:
                - type: errorInfo
                  reason: resourceNotFound
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
                - type: resourceInfo
                  resource: <resource>
                  ids:
                  - <ids>
    internalServerError:
      description: Something went wrong in the server. Please try again.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiV3Error'
          example:
            code: 500
            status: internal
            message: An internal error has occurred. Please try again later.
            details:
            - type: errorInfo
              reason: unexpectedError
              domain: apiv3
              metadata:
                path: /api/v3.0/<resource>
    unauthorized:
      description: You are not authenticated. Please authenticate and try again.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiV3Error'
          example:
            code: 401
            status: unauthenticated
            message: The client caller does not have a valid authentication credential
            details:
            - type: errorInfo
              reason: unauthenticated
              domain: apiv3
              metadata:
                path: /api/v3.0/<resource>
    validationError:
      description: The supplied object is invalid. Error detail will contain the validation error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiV3Error'
          examples:
            unexpectedArgument:
              value:
                code: 400
                status: invalidArgument
                message: 'Unexpected argument: name'
                details:
                - type: errorInfo
                  reason: unexpectedArgument
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
            missingRequiredArgument:
              value:
                code: 400
                status: invalidArgument
                message: 'Missing required arguments: name, id'
                details:
                - type: errorInfo
                  reason: missingRequiredArgument
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
            badRequestInvalidJSON:
              value:
                code: 400
                status: invalidArgument
                message: Invalid JSON
                details:
                - type: errorInfo
                  reason: invalidJSON
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
            badRequestInvalidArgument:
              value:
                code: 400
                status: invalidArgument
                message: 'Invalid Argument: Argument name is too long'
                details:
                - type: errorInfo
                  reason: wrongArgumentValue
                  domain: apiv3
                  metadata:
                    path: /api/v3.0/<resource>
                - type: badRequest
                  argumentViolations:
                  - argumentName: name
                    description: Name is too long
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
x-provenance:
  method: searched
  source: https://developer.eagleeyenetworks.com/reference
  harvested: '2026-10-14'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://developer.eagleeyenetworks.com/reference/addfile.md
  - https://developer.eagleeyenetworks.com/reference/createexportjob.md
  - https://developer.eagleeyenetworks.com/reference/deletealltrashfiles.md
  - https://developer.eagleeyenetworks.com/reference/deletefile.md
  - https://developer.eagleeyenetworks.com/reference/deletejob.md
  - https://developer.eagleeyenetworks.com/reference/deletetrashfile.md
  - https://developer.eagleeyenetworks.com/reference/downloaddownload.md
  - https://developer.eagleeyenetworks.com/reference/downloadfile.md
  - https://developer.eagleeyenetworks.com/reference/getdownload.md
  - https://developer.eagleeyenetworks.com/reference/getdownloads.md
  - https://developer.eagleeyenetworks.com/reference/getfile.md
  - https://developer.eagleeyenetworks.com/reference/getfiles.md
  - https://developer.eagleeyenetworks.com/reference/getjob.md
  - https://developer.eagleeyenetworks.com/reference/getliveimage.md
  - https://developer.eagleeyenetworks.com/reference/getmediasession.md
  - https://developer.eagleeyenetworks.com/reference/getrecordedimage.md
  - https://developer.eagleeyenetworks.com/reference/gettrash.md
  - https://developer.eagleeyenetworks.com/reference/gettrashfile.md
  - https://developer.eagleeyenetworks.com/reference/listfeeds.md
  - https://developer.eagleeyenetworks.com/reference/listjobs.md
  - https://developer.eagleeyenetworks.com/reference/listmedia.md
  - https://developer.eagleeyenetworks.com/reference/restoretrashfile.md
  - https://developer.eagleeyenetworks.com/reference/retryexport.md
  - https://developer.eagleeyenetworks.com/reference/updatedownload.md
  - https://developer.eagleeyenetworks.com/reference/updatefile.md
  merge:
    pages: 25
    deduped: 479
    conflicts_kept_first: 0