/  Yamcs HTTP API  /  Parameter Archive  /  Get Archived Parameter Segments

Get Archived Parameter SegmentsΒΆ

For a given parameter id, get the list of segments available for that parameter. A segment contains multiple samples (maximum ~70 minutes) of the same parameter.

URI Template

GET /api/parameter-archive/{instance}/pids/{pid}/segments
{instance}

Yamcs instance name

{pid}

Parameter ID

Query Parameters

start

Include segments after start (inclusive)

stop

Include segments before stop (exclusive)

Response Type

// Recorded segments for the requested parameter
interface ArchivedParameterSegmentsResponse {
  parameterInfo: ArchivedParameterInfo;
  segments: ArchiveParameterSegmentInfo[];
}

Related Types

// This message contains information about one parameter in the parameter archive.
// Each (parameter name, raw type, engineering type) is assigned a unique id and all
// the samples are stored with that id.
//
// If an MDB change results in the parameter having a different engineering or raw type,
// a new pid will be allocated.
//
// This is why for the same parameter name, we can have multiple parameter ids.
//
// The parameter archive contains data even for parameters removed from the MDB.
interface ArchivedParameterInfo {

  // Parameter ID
  pid: number;

  // Fully-qualified parameter name
  parameter: string;

  // Raw type
  rawType: Type;

  // Engineering type
  engType: Type;

  // Groups where this parameter is included
  gids: number[];
}

interface ArchiveParameterSegmentInfo {

  // Multiple parameters are grouped such that all in one group have
  // the same timestamps. For example: all parameters extracted from
  // one TM packet usually have the same timestamp.
  //
  // This way we have a unique segment storing the timestamps for a
  // group of parameters. The groupId can be used to retrieve all parameters
  // from the same group.
  groupId: number;

  // Segment start
  start: string;  // RFC 3339 timestamp

  // Segment end
  end: string;  // RFC 3339 timestamp

  // Number of samples in the segment
  count: number;
}

enum Type {
  FLOAT = "FLOAT",
  DOUBLE = "DOUBLE",
  UINT32 = "UINT32",
  SINT32 = "SINT32",
  BINARY = "BINARY",
  STRING = "STRING",
  TIMESTAMP = "TIMESTAMP",
  UINT64 = "UINT64",
  SINT64 = "SINT64",
  BOOLEAN = "BOOLEAN",
  AGGREGATE = "AGGREGATE",
  ARRAY = "ARRAY",

  // Enumerated values have both an integer (sint64Value) and a string representation
  ENUMERATED = "ENUMERATED",
  NONE = "NONE",
}