Intervals endpoint

Given a StudyKey, fetch the set of intervals. An interval is a design resource that represents a set of forms that must be completed for each subject in a study. It is related to visits in that each visit is a single instance of an interval for a given subject.

Accessing the index

A GET request is used to access the index

Request structure

GET /api/v1/edc/studies/PHARMADEMO/intervals?page=0&size=25&sort=intervalId%2CASC&filter=intervalId%3D%3D161 HTTP/1.1
Content-Type: application/json
Host: localhost:8080

Path parameters are required.

Table 1. /api/v1/edc/studies/{studyKey}/intervals
Parameter Description

studyKey

StudyKey to retrieve list of intervals

Request parameters

Request parameters are optional. Default values are used unless specified.

Parameter Description

page

Which index page to be returned. Default value is 0.

size

Items per page to be returned. Default value is 25. Maximum items allowed per page is 500

sort

Name of the property by which to sort the result set. To sort in a particular direction add a comma to the property name and either asc or desc. To sort by multiple properties add additional sort parameters. Default value is intervalId,asc.

filter

Optional filter search criteria. Must follow correct syntax. Refer to filter section for details.

Response body

Below is an example response payload.

{
  "metadata" : {
    "status" : "OK",
    "method" : "GET",
    "path" : "/api/v1/edc/studies/PHARMADEMO/intervals",
    "timestamp" : "2023-12-27 22:15:15",
    "error" : { }
  },
  "pagination" : {
    "currentPage" : 0,
    "size" : 25,
    "totalPages" : 1,
    "totalElements" : 1,
    "sort" : [ {
      "property" : "intervalId",
      "direction" : "ASC"
    } ]
  },
  "data" : [ {
    "studyKey" : "PHARMADEMO",
    "intervalId" : 1,
    "intervalName" : "Day 1",
    "intervalDescription" : "Day 1",
    "intervalSequence" : 110,
    "intervalGroupId" : 10,
    "intervalGroupName" : "ePRO",
    "disabled" : true,
    "dateCreated" : "2023-12-27 22:15:15",
    "dateModified" : "2023-12-27 22:15:16",
    "timeline" : "Start Date End Date",
    "definedUsingInterval" : "Baseline",
    "windowCalculationForm" : "Procedure",
    "windowCalculationDate" : "PROCDT",
    "actualDateForm" : "Follow Up",
    "actualDate" : "FUDT",
    "dueDateWillBeIn" : 30,
    "negativeSlack" : 7,
    "positiveSlack" : 7,
    "eproGracePeriod" : 2,
    "forms" : [ {
      "formId" : 123,
      "formKey" : "MY-FORM-KEY",
      "formName" : "myFormName"
    } ]
  } ]
}

Response fields

Path Type Description

metadata.status

String

Http status

metadata.method

String

Http method

metadata.path

String

Requested URI path

metadata.timestamp

String

Timestamp when response was generated

metadata.error

Object

Detail error message from request if error occur

pagination.currentPage

Number

Current index page

pagination.size

Number

Size per page

pagination.totalPages

Number

Total pages return from search

pagination.totalElements

Number

Total elements return from search

pagination.sort[].property

String

Sort property

pagination.sort[].direction

String

Sort direction

data[].studyKey

String

Unique study key for a given study

data[].intervalId

Number

Unique system identifier for Interval

data[].intervalName

String

User defined interval/visit name

data[].intervalDescription

String

User defined interval/visit description

data[].intervalSequence

Number

User defined sequence of interval

data[].intervalGroupId

Number

User defined interval groupId

data[].intervalGroupName

String

User defined interval group name

data[].timeline

String

Type of Interval Visit Window. Valid responses: None, Due Date, Start - End Date, or Actual Date

data[].definedUsingInterval

String

The baseline Interval where the calculate from date is collected

data[].windowCalculationForm

String

The baseline Form where the calculate from date is collected

data[].windowCalculationDate

String

The baseline Field where the calculate from date is collected

data[].actualDateForm

String

The actual date Form for a specific Interval

data[].actualDate

String

The actual date Field for a specific Interval

data[].dueDateWillBeIn

Number

The number of days the actual date is due from the calculate from date

data[].negativeSlack

Number

The number of negative days allowed from the due date

data[].positiveSlack

Number

The number of positive days allowed from the due date

data[].eproGracePeriod

Number

The number of positive days allowed for ePRO from the due date

data[].forms[].formId

Number

Form ID

data[].forms[].formKey

String

Form Key

data[].forms[].formName

String

Form name

data[].disabled

Boolean

Interval form is soft delete status

data[].dateCreated

String

Date when this interval was created

data[].dateModified

String

Date when this interval was last modified