/  Yamcs HTTP API  /  Timeline  /  Add Band

Add BandΒΆ

Add a band.

URI Template

POST /api/timeline/{instance}/bands
{instance}

Yamcs instance name

Request Body

interface AddBandRequest {

  // Band name
  name: string;

  //if true, all users have access to this band, otherwise only the user who has created it
  shared: boolean;

  //the band contains only items from this source
  source: string;

  // Items containing these tags will be part of the timeline
  // this is deprecated, the filters below should be used instead
  tags: string[];

  //a query filter which can be used to limit additionally the items which are part of the band
  filters: ItemFilter[];

  // Type of band
  type: TimelineBandType;

  // Band description
  description: string;

  // Additional properties used by yamcs-web to render this band
  properties: {[key: string]: string};
}

Response Type

interface TimelineBand {

  // Yamcs instance name
  instance: string;

  // Band identifier (UUID)
  id: string;

  // Band name
  name: string;

  // User who has created the band
  username: string;

  //if true, all users have access to this band, otherwise only the user who has created it
  shared: boolean;

  //the band contains only items from this source
  source: string;

  //the band contains only items with these tags; if the list is empty, then all items from the given source are part of the band
  //this is deprecated, the filters below should be used to select the items
  tags: string[];

  //The filters are to be considered in an AND manner.
  // An item will be part of the band if it matches all the filters.
  // If the list is empty, then all items from the given source are part of the band
  filters: ItemFilter[];

  // Type of band
  type: TimelineBandType;

  // Band description
  description: string;

  // Additional properties used by yamcs-web to render this band
  properties: {[key: string]: string};
}

Related Types

//an item matches the filter if it matches any of the criteria from the list.
//if the list is empty, the filter will not match
interface ItemFilter {
  criteria: FilterCriterion[];
}

// The filter criteria depends very much of the source which provides the item
// rdb source
//  supported key is "tag"
//   -> An item matches if the value proprty is among its tags
// commands source
//  supported key is "cmdNamePattern"
//  value is considered as a regexp and match against the cmdName from the cmdhist table
interface FilterCriterion {
  key: string;
  value: string;
}

enum TimelineBandType {
  TIME_RULER = "TIME_RULER",
  ITEM_BAND = "ITEM_BAND",
  SPACER = "SPACER",
  COMMAND_BAND = "COMMAND_BAND",
}