Streams

Edit many streams

POST/streams/bulk-edit/

write Change: creates or edits. Scopes

Applies changes to the selection in the background; a key left out leaves that field alone. Streams whose playback changes restart a few at a time. sources is changed on its own, never with other changes. A selection is the streams ticked (ids) or every stream the list filters select (all_matching: true with filters, less exclude).

Body

  • selectionobjectrequired

    The streams a bulk action applies to: the ones ticked (ids), or every stream the list filters select (all_matching: true with filters, which take the list's query parameters), less exclude.

    • idsstring (uuid)[]
    • all_matchingboolean

      Default: false

    • filtersobject
    • excludestring (uuid)[]
  • changesobjectrequired

    What a bulk edit changes. A key left out leaves that field alone. categories_remove never takes a stream out of its main category (that is category). pinned_servers is in order: the first plays the streams, the others take over.

    • categorystring (uuid)
    • categories_addstring (uuid)[]
    • categories_removestring (uuid)[]
    • bouquets_addstring (uuid)[]
    • bouquets_removestring (uuid)[]
    • is_activeboolean
    • is_on_demandboolean
    • is_directboolean
    • streaming_enginestring
      • gstreamer - GStreamer
      • ffmpeg - FFmpeg

      One of: "gstreamer" "ffmpeg"

    • transcoding_profilestring (uuid)can be null
    • allow_passthroughboolean
    • routing_modestring
      • auto - Auto load-balance (excludes panel)
      • pinned - Pinned (ordered failover)

      One of: "auto" "pinned"

    • pinned_serversstring (uuid)[]
    • auto_eligible_serversstring (uuid)[]
    • epgstring
      • auto - auto
      • clear - clear

      One of: "auto" "clear"

    • epg_modestring
      • missing - missing
      • auto - auto
      • all - all

      One of: "missing" "auto" "all"

    • logostring
      • auto - auto
      • clear - clear

      One of: "auto" "clear"

    • logo_modestring
      • missing - missing
      • auto - auto

      One of: "missing" "auto"

    • sourcesobject

      How the sources of the selected streams change. move: each stream gets the same channel on another provider (only when exactly one matches), replacing its old source, as its main source or as its last backup (place). address: part of each address changes (server, or the login in it). remove: the sources on a provider or line are taken out; a stream is never left without one. check: the sources are read again.

      • modestringrequired
        • move - move
        • address - address
        • remove - remove
        • check - check

        One of: "move" "address" "remove" "check"

      • providerinteger
      • placestring

        Default: "replace"

      • replacestring

        Default: "old"

      • followboolean

        Default: false

      • old_providerintegercan be null
      • old_hoststring
      • old_userstring
      • from_hoststring
      • to_basestring
      • from_userstring
      • to_userstring
      • to_passwordstring
    • renameobject

      One renaming rule. Every key is optional; at least one must change something.

      • remove_codeboolean

        Default: false

      • remove_qualityboolean

        Default: false

      • remove_prefixstring[]
      • remove_suffixstring[]
      • replaceobject[]
        • findstringrequired
        • tostring
        • patternboolean

          Default: false

      • casestring

        Default: "keep"

      • tidyboolean

        Default: true

      • add_prefixstring
      • add_suffixstring
      • stop_name_syncboolean

        Default: false

    • sortobject

      A sort into categories by name, every rule's category an existing category's id.

      • rulesobject[]required
        • matchstringrequired
          • starts - starts
          • contains - contains
          • ends - ends
          • pattern - pattern

          One of: "starts" "contains" "ends" "pattern"

        • textstringrequired
        • categorystring (uuid)required
      • unlist_oldboolean

        Default: true

Response

202 The background task editing them.

  • idstringrequired
  • kindstringrequired

    The kind of task, e.g. bulk_edit, bulk_delete, import.

  • kind_labelstringrequired
  • titlestringrequired
  • subtitlestringrequired
  • statestringrequired

    queued, running, waiting, stalled, completed, failed or cancelled.

  • state_labelstringrequired
  • statusstringrequired

    The task's own status, before it is grouped into state.

  • status_labelstringrequired
  • progressobjectrequired
    • doneintegerrequiredcan be null
    • totalintegerrequiredcan be null
    • percentintegerrequiredcan be null

      0 to 100, null while unknown.

    • phasestringrequired

      What it is doing now, in words; may be empty.

  • messagestringrequired
  • detailsobject[]required
  • errorsobject[]required
  • linkobjectrequiredcan be null

    The dashboard page about it: {path, query, label}, or null.

  • actionsstring[]required

    What the caller may do with it now: cancel, resume, retry.

  • created_by_usernamestringrequiredcan be null
  • created_atstring (date-time)required
  • started_atstring (date-time)requiredcan be null
  • finished_atstring (date-time)requiredcan be null
  • updated_atstring (date-time)required

Errors

  • 400 Something sent is not valid. Each field that is wrong is named with what is wrong.
  • 401 No credential, or one that is wrong, expired or revoked.
  • 403 The account, or the key's or app's scopes, may not do this.
  • 429 Slow down: wait the seconds in the Retry-After header, then try again.

What each error means