Arlo

REST Auth API: Registrations

Registration resources represent a request from a Contact to attend an Event. For advanced events with session-level registration options, this resource also supports a collection of child EventSessionRegistrations that represent the sessions selected by the registrant to attend. This resource also support a collection of child EventOptionRegistrations that represent the options selected during the registration to an Event.

Registrations are described by a unique identifier, attendance and optional outcome and grade details. For integration with other systems (such as e-learning systems), registrations can also record details about completion progess and state. In addition to this basic information, registrations have a number of linked resources that describe other details such as the related event, contact, and order (if any).

This entity also supports CustomFields.

Registrations instance resource

Resource URI

/api/2012-02-01/auth/resources/registrations/{RegistrationID}/

General structure

<Registration>
  <RegistrationID>987</RegistrationID>
  <UniqueIdentifier>730dd1df-4a0c-4660-9267-51670807b843</UniqueIdentifier>
  <Attendance>Attended</Attendance>
  <Outcome>Pass</Outcome>
  <Grade>A+ (92%)</Grade>
  <Status>Approved</Status>
  <ProgressPercent>75.0</ProgressPercent>
  <ProgressStatus>Module 4B in progress</ProgressStatus>
  <Status>Completed</Status>
  <CertificateSentDateTime>2018-05-29T00:20:11.3165591Z</CertificateSentDateTime>
  <CreatedDateTime>2011-10-28T22:42:13.95Z</CreatedDateTime>
  <LastModifiedDateTime>2011-03-23T09:25:09.483Z</LastModifiedDateTime>
  <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/CustomFields" type="application/xml" title="CustomFields" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/customfields/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Event" type="application/xml" title="Event" href="https://demo.arlo.co/api/2012-02-01/auth/resources/events/176/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Contact" type="application/xml" title="Contact" href="https://demo.arlo.co/api/2012-02-01/auth/resources/contacts/872/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/SourceInfo" type="application/xml" title="SourceInfo" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/sourceinfo/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/SessionRegistrations" type="application/xml" title="SessionRegistrations" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/sessionregistrations/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/OptionRegistrations" type="application/xml" title="OptionRegistrations" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/optionregistrations/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/OrderLine" type="application/xml" title="OrderLine" href="https://demo.arlo.co/api/2012-02-01/auth/resources/orderlines/23990/" />
</Registration>

Resource properties

Property Description
RegistrationID An integer value that uniquely identifies this resource within the platform.
UniqueIdentifier A GUID value that uniquely identifies this resource across any platform.
Attendance A RegistrationContactAttendance value indicating whether the Contact attended the Event.
Grade An string representing the grade associated with this resource, of up to 64 characters. May be any readable text representing the level of achievement, including letters, numbers, or both. Omitted if no grade has been assigned.
Outcome A RegistrationOutcome value representing the outcome of the registration in terms of Pass or Fail. Omitted if no outcome has been assigned.
LastActivityDateTime A DateTimeOffset value representing the time when there was some activity in an external system associated with this registration. Most relevant for registrations associated with e-learning. This property is provided for external integration purposes and is persisted but not otherwise managed by the Arlo platform.
ProgressStatus A user-readable string representing the status of the registration, up to 64 characters. Most relevant for registrations associated with e-learning. This property is provided for external integration purposes and is persisted but not otherwise managed by the Arlo platform.
ProgressPercent A decimal value representing a progress of the registration. Most relevant for registrations associated with e-learning. This property is provided for external integration purposes and is persisted but not otherwise managed by Arlo. NOTE: Setting this value to '100' will not change the status of the registration to Completed.
Status A RegistrationStatus value representing the current state of this registration, such as pending approval, approved, cancelled, or completed.
CertificateSentDateTime A UTC DateTime value indicating when a certificate was last sent to the registrant.
CreatedDateTime A UTC DateTime value indicating when this resource was created.
LastModifiedDateTime A UTC DateTime value indicating when this resource was last modified.
Comments An inline RichContent resource representing comments made against this Registration.

HTTP GET

Returns a representation of a Registration, including the properties and links above.

Optional parameters
Parameter Description
expand Expression referencing Link elements to expand when generating the response. See link expansion.
Example

GET /api/2012-02-01/auth/resources/registrations/987/

<Registration>
  <RegistrationID>987</RegistrationID>
  <UniqueIdentifier>730dd1df-4a0c-4660-9267-51670807b843</UniqueIdentifier>
  <Attendance>Attended</Attendance>
  <Outcome>Pass</Outcome>
  <Grade>A+ (92%)</Grade>
  <Status>Approved</Status>
  <ProgressPercent>100.00</ProgressPercent>
  <ProgressStatus>All assignments completed.</ProgressStatus>
  <Status>Completed</Status>
  <CertificateSentDateTime>2018-05-29T00:20:11.3165591Z</CertificateSentDateTime>
  <CreatedDateTime>2011-10-28T22:42:13.95Z</CreatedDateTime>
  <LastModifiedDateTime>2011-03-23T09:25:09.483Z</LastModifiedDateTime>
  <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Event" type="application/xml" title="Event" href="https://demo.arlo.co/api/2012-02-01/auth/resources/events/176/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Contact" type="application/xml" title="Contact" href="https://demo.arlo.co/api/2012-02-01/auth/resources/contacts/872/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/SourceInfo" type="application/xml" title="SourceInfo" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/sourceinfo/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/SessionRegistrations" type="application/xml" title="SessionRegistrations" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/sessionregistrations/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/OptionRegistrations" type="application/xml" title="OptionRegistrations" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/987/optionregistrations/" />
</Registration>

HTTP POST

Not supported.

HTTP PUT

Performs an update of a Registration by replacing the representation with a new copy. The HTTP PATCH implementation provides an alternative, targeted, mechanism for registration update.

The submitted registration representation must be complete. Links are not currently processed as part of this PUT -- only updates to property fields are supported. This operation should always be executed using a modified instance from a previous HTTP GET request.

Response

See HTTP response status codes for a general overview of all possible API status codes. Common response codes for PUT operations are listed below.

Status Description
200 OK Resource was successfully updated.
400 Bad Request HTTP request body contains malformed or invalid parameters.
409 Conflict Resource could not be updated because it contains values that conflict with those on the server.
Example 1

Simple update of an existing registration. The PUT content must be a modified version of content retrived from a prior GET.

PUT https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/9823/ HTTP/1.1
Accept: application/xml
Accept-Encoding: gzip, deflate
Content-Type: application/xml
Content-Length: 308
<?xml version="1.0" encoding="UTF-8"?>
<Registration>
  <RegistrationID>21301</RegistrationID>
  <UniqueIdentifier>4b272081-f3de-4726-b11b-a0afefd84243</UniqueIdentifier>
  <Attendance>Unknown</Attendance>
  <Outcome>Pass</Outcome>
  <Grade>A+ (92%)</Grade>
  <Status>Approved</Status>
  <ProgressPercent>100.00</ProgressPercent>
  <ProgressStatus>All assignments completed.</ProgressStatus>
  <Status>Approved</Status>
  <CertificateSentDateTime>2018-05-29T00:20:11.3165591Z</CertificateSentDateTime>
  <CreatedDateTime>2015-02-24T20:56:34.960Z</CreatedDateTime>
  <LastModifiedDateTime>2015-02-24T22:06:44.053Z</LastModifiedDateTime>
  <Link rel="self" type="application/xml" href="http://demo.arlo.co/api/2012-02-01/auth/resources/registrations/21301/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Event" type="application/xml" title="Event" href="http://demo.arlo.co/api/2012-02-01/auth/resources/events/14595/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Contact" type="application/xml" title="Contact" href="http://demo.arlo.co/api/2012-02-01/auth/resources/contacts/10763/" />
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/SourceInfo" type="application/xml" title="SourceInfo" href="http://demo.arlo.co/api/2012-02-01/auth/resources/registrations/21301/sourceinfo/" />
</Registration>

HTTP DELETE

Not supported.

HTTP PATCH

Performs a partial update of a Registration by replacing parts of the representation with data from the request. Note that our PATCH implementation follows the draft RFC 5261 standard. Note that PATCH requests will be interpreted according to the RBAC permissions of the identity of the user on behalf of whom a request is being made.

The submitted Registration representation can be/is often incomplete. Omitted properties will be ignored for the purposes of update.

Response

See HTTP response status codes for a general overview of all possible API status codes. Common response codes for PATCH operations are listed below.

Status Description
200 OK Resource was successfully updated.
400 Bad Request HTTP request body contains malformed or invalid parameters or is invalid according to our implementation of RFC 5261.
409 Conflict Resource could not be updated because it contains values that conflict with those on the server.
Example 1 - replacement

Simple update of the grade of an existing registration. Note the RFC style and nature of the XPath selector used in the sel attributeto target a specific part of the object graph for update.

PATCH https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/9823/ HTTP/1.1
Accept: application/xml
Accept-Encoding: gzip, deflate
Content-Type: application/xml
Content-Length: 103
<?xml version="1.0" encoding="UTF-8"?>
<diff>
  <replace sel="Registration/Grade/text()[1]">Fair</replace>
</diff>
Example 2 - replace and add

Simple update of the grade of an existing registration, and the addition of comments.

PATCH https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/9823/ HTTP/1.1
Accept: application/xml
Accept-Encoding: gzip, deflate
Content-Type: application/xml
Content-Length: 217
<?xml version="1.0" encoding="UTF-8"?>
<diff>
  <replace sel="Registration/Grade/text()[1]">Excellent</replace>
  <add sel="Registration">
    <Comments>
      <Content>Good attitude and self application</Content>
      <ContentType>text/plain</ContentType>
    </Comments>
  </add>
</diff>
Example 3 - bad request

Attempted update of the grade of an existing registration but with a malformed patch document.

PATCH https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/9823/ HTTP/1.1
Accept: application/xml
Accept-Encoding: gzip, deflate
Content-Type: application/xml
Content-Length: 217
<?xml version="1.0" encoding="UTF-8"?>
<diff>
  <replace sel="Regisration/Grade/text()[1]">Excellent</replace>
</diff>

As the selector element is malformed (Regisration as opposed to the correct Registration), an error is returned along with an HTTP status of 400:

<?xml version="1.0" encoding="UTF-8"?>
<ApiException>
  <Code>BadRequest</Code>
  <Message>Path Regisration/Grade/text()[1] did not match a node (line = 3, position = 3)</Message>
</ApiException>

Registration collection resource

The Registration collection resource represents the set of Registration resources for all Events on the platform.

Resource URI

/api/2012-02-01/auth/resources/registrations/

HTTP GET

Returns a representation of the collection as a set of Link elements which can be followed to access individual Registration resources, or link expansion can be used via the expand query parameter to inline the entities with the HTTP GET response. See querying collections for general information on handling resource collections.

Optional parameters
Parameter Description
expand Expression referencing Link elements to expand when generating the response. See link expansion.
filter A filter expression to apply to the collection. See collection filters. The following properties (and link titles) may be used in filter expressions:
  • RegistrationID
  • UniqueIdentifier
  • Attendance
  • Status
  • CreatedDateTime
  • LastModifiedDateTime
  • Event
  • Contact
orderby A sort expression to apply to the collection. See collection sorting. The following properties may be used in sort expressions:
  • RegistrationID
  • CreatedDateTime
  • LastModifiedDateTime
skip Returns a subset of records from the collection, starting at index N+1 specified by this parameter. The skip and top parameters are generally used for collection paging.
top Returns a subset of records from the collection, starting at index 0 or index skip, and returns the first N records. The skip and top parameters are generally used for collection paging.
Example 1

Retrieve a collection of Registration links with the default parameters, and no link expansion.

GET /api/2012-02-01/auth/resources/registrations/

<Registrations>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/1/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/2/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/3/"/>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/4/"/>
  ...
  <Link rel="next" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/?skip=100"/>
  <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/"/>
</Registrations>
Example 2

Retrieve a collection of Registration links with the default parameters, with Registration link expansion.

GET /api/2012-02-01/auth/resources/registrations/?expand=Registration

<Registrations>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/1/">
    <Registration>
      <RegistrationID>1</RegistrationID>
      <UniqueIdentifier>730dd1df-4a0c-4660-9267-51670807b843</UniqueIdentifier>
      <Attendance>Attended</Attendance>
      <Status>Completed</Status>
      <CreatedDateTime>2011-10-28T22:42:13.95Z</CreatedDateTime>
      <LastModifiedDateTime>2011-12-23T09:25:09.483Z</LastModifiedDateTime>
      <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/1/"/>
      <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Event" type="application/xml" title="Event" href="https://demo.arlo.co/api/2012-02-01/auth/resources/events/176/"/>
      <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Contact" type="application/xml" title="Contact" href="https://demo.arlo.co/api/2012-02-01/auth/resources/contacts/872/"/>
      <link rel="http://schemas.arlo.co/api/2012/02/auth/related/SourceInfo" type="application/xml" title="SourceInfo" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/1/sourceinfo/" />
    </Registration>
  </Link>
  <Link rel="http://schemas.arlo.co/api/2012/02/auth/Registration" type="application/xml" title="Registration" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/2/">
    <Registration>
      <RegistrationID>2</RegistrationID>
      <UniqueIdentifier>49e98cc4-717b-45e3-9144-c68b704510c0</UniqueIdentifier>
      <Attendance>Unknown</Attendance>
      <Status>Completed</Status>
      <CertificateSentDateTime>2018-05-29T00:20:11.3165591Z</CertificateSentDateTime>
      <CreatedDateTime>2011-10-29T21:12:12.35Z</CreatedDateTime>
      <LastModifiedDateTime>2011-12-25T09:45:02.143Z</LastModifiedDateTime>
      <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/2/"/>
      <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Event" type="application/xml" title="Event" href="https://demo.arlo.co/api/2012-02-01/auth/resources/events/562/"/>
      <Link rel="http://schemas.arlo.co/api/2012/02/auth/related/Contact" type="application/xml" title="Contact" href="https://demo.arlo.co/api/2012-02-01/auth/resources/contacts/841/"/>
      <link rel="http://schemas.arlo.co/api/2012/02/auth/related/SourceInfo" type="application/xml" title="SourceInfo" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/2/sourceinfo/" />
    </Registration>
  </Link>
  ...
  <Link rel="next" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/?expand=Registration&skip=100"/>
  <Link rel="self" type="application/xml" href="https://demo.arlo.co/api/2012-02-01/auth/resources/registrations/?expand=Registration"/>
</Registrations>

HTTP POST

Not supported.

HTTP PUT

Not supported.

HTTP DELETE

Not supported.