Learning Management API Overview

Welcome to the National Notary Association platform on the Cloud. learning.nna-platform.com provides services to support learning management.

This documentation describes a RESTful API that provides programmatic access to interact with the platform. Usage of the API is via the HTTP protocol. The GET, POST, PUT, PATCH and DELETE requests are all used. Resource representations are in JSON.

Resources

Following is a brief description of the resouces that are available in this API.

Student

A student is a special type of user that doesn't require an invitation to join an organization. This resource provides functionality to Enroll the users as Student to learning the required courses to become a Notary from the IN state

Request Headers

The following table describes HTTP request headers that will be used.

Header Description Required Example

Host

The domain name of the server.

Yes.

Host: learning.nna-platform.com

Content-Type

Describes the representation of the request message body. Must be 'application/json'.

Yes, on requests that contain a message body.

Content-Type: application/json

Authorization

Identifies the authorized user making the request.

Yes, unless the request provides an API Key in the URL.

Authorization: Bearer {token}
Authorization: NNAKeySig {api key id}:{signature}

Accept-Language

Restricts the set of natural languages that are preferred as a response to the request.

No. Currently, only 'en-US' is supported.

Accept-Language: en-US

Custom Response Headers

The following table describes possible custom response headers.

Header Description

nna-message-id

The message id for the request. This is only returned if there was an error.

nna-error-code

If an error occurred while submitting the request, an error code is returned.

Standard HTTP Status Codes

The following table describes HTTP status codes that may be returned.

Code Description

200

The request was successfully completed.

202

The request has been accepted for processing, but the processing has not been completed.

204

The server fulfilled the request, but does not need to return a response message body.

400

Bad request.

401

Not authorized.

404

The request specified a URI of a resource that does not exist.

405

The HTTP verb specified in the request (DELETE, GET, HEAD, POST, PUT) is not supported for this request URI.

429

Too Many Requests. Rate limited.

500

The server encountered an unexpected condition which prevented it from fulfilling the request.

501

The server does not currently support the functionality required to fulfill the request.

503

The server is currently unable to handle the request.