Retrieve All Offerings

Last modified on August 24, 2023 at 6:18 pm

Overview

Retrieve a list of all offerings defined in your organization. The result of this GET request will be JSON-encoded representation of an array of offering objects. The object definition is provided below. This request follows standard practices for paging and filter restrictions.

JSON Object Definition

The following is a full definition of all possible properties on the JSON object representing offering categories. For details about these properties, see the Offering Object Reference.

{
  "id" : "",
  "title" : "",
  "createdDate" : "",
  "beginDate" : "",
  "endDate" : "",
  "registrationBeginDate" : "",
  "registrationEndDate" : "",
  "catalogDescription" : "",
  "dashboardDescription" : "",
  "deliveryDescription" : "",
  "price" : 0.0,
  "offeringCategoryIds" : [ "", ... ],
  "tags" : [ "", ... ],
  "orderIndex" : 0
}

Filtering

Filtering the result list can be accomplished by specifying value restrictions for the following properties:

Parameter NameDetails
createdDateString representation of a date. This can be a precise timestamp, an imprecise date implying a range, or a range of dates. See the Date Filtering documentation for more detail.
titleCase-insensitive substring match, i.e. the parameter value provided must occur verbatim somewhere within the offering title to match
offeringCategoryIdThe offering must be a member of the offering category indicated by the provided id to match
tagThe offering must be tagged with the given value to match. Note that it is posible to specify multiple tags in this parameter; simply separate each tag by either a space or a comma. To match, the offering must be tagged with ALL specified tags.
studentIdAlthough this property does not actually occur on the offering object, this special parameter can be used to restrict the results to offerings which are available for registration for the user with the given id.

Examples

List of Two Offerings

This example shows a response containing two offerings. Since title and orderIndex are required fields, they are present for all objects; other fields are omitted when no value is set.

Request
GET /dc/api/v5/offerings HTTP/1.1
Host: api.digitalchalk.com
Accept: application/json
Response
HTTP/1.1 200 OK
Content-type: application/json
Content-length: 931

[
  {
    "id" : "8925ac9a25de5f5129a927610a0e00e",
    "title" : "Sample Offering 1",
    "createdDate" : "2011-04-03T00:10:00Z",
    "beginDate" : "2013-07-01T00:00:00Z",
    "price" : 260.0,
    "orderIndex" : 0
  },
  {
    "id" : "7610000620ac0df0113cb75752dadee",
    "title" : "Sample Offering 2",
    "createdDate" : "2012-11-02T06:04:00Z",
    "beginDate" : "2013-08-01T08:00:00Z",
    "endDate" : "2014-01-01T07:59:59Z",
    "registrationBeginDate" : "2013-07-15T00:00:00Z",
    "registrationEndDate" : "2013-08-01T00:00:00Z",
    "catalogDescription" : "Second Sample Offering",
    "dashboardDescription" : "Begin taking Sample Offering 2",
    "deliveryDescription" : "Report Record of Sample Offering 2",
    "price" : 285.0,
    "offeringCategoryIds" : [ "322887559acf003141592653584510e", "31984324731200022dc6f676621398a" ],
    "tags" : [ "sample" ],
    "orderIndex" : 1
  }
]

Reference