Configuration Details

Configuration Details

The Ed-Fi ODS / API is configurable in a number of ways. Since the source code is available to licensees, one could argue that everything is configurable. But, what we’re discussing in this section are things like settings and options that do not require a change to the compiled code.

Key configuration points include:

  • OAuth endpoints

  • OAuth key retrieval site location

  • Instance type information (e.g., Sandbox, Shared Instance)

  • Bulk upload directory

  • Key retrieval maximum tries

  • Token timeout value

Detail about the configurations can be found in the tables below.

Required Configuration Settings

Some configuration must be done for every ODS / API platform instance. Examples of required configurations include database connection strings, SMTP server locations, and similar.

To make it easier for developers to install and run the Ed-Fi ODS / API, the default download from source control is pre-configured with values appropriate for a developer or single-server test instance of the system. 

Application

Location

Setting Name

Value

Description

Application

Location

Setting Name

Value

Description

EdFi.Ods.Admin.Web

Web.config

OAuthUrl

Example: http://site-address:port/oauth

Points to the root of the authorization API in the Ed-Fi ODS website.

EdFi.Ods.SecurityConfiguration
.Administration.Web

Web.config

KeyRetrievalSite

Example: http://site-address:port/

Points to the Key Retrieval tool application. The link in the email body uses this address as the root address of the Key Retrieval Tool site.

EdFi.Ods.WebApi

Web.config

owin:appStartup

Sandbox, SharedInstance, etc.

The component settings for the API. See the Developers' Guide for more information on this setting.

EdFi.Ods.WebApi

Web.config

BulkOperationWorkingFolder

Example: c:\temp

A temporary storage area used to assemble bulk upload data.

EdFi.Ods.WebApi

Web.config

DescriptorNamespacePrefix

Example: http://www.ed-fi.org

The default namespace for creating and finding descriptors if none are supplied. More information on descriptors and descriptor namespaces can be found at Ed-Fi Descriptors

EdFi.Ods.SwaggerUI

Web.config

swagger.webApiMetadataUrl

Example: http://site-address:port/metadata/{section}/api-docs

The location of the Swagger metadata in the Ed-Fi ODS / API

A deployment to a staging or production instance is usually more involved, and requires additional configuration. Required configurations for a production instance can be found in the Deployment section of this documentation.

Optional Configuration Settings

Although this list of settings is not exhaustive, other important and useful optional configuration values include:

Application

Location

Setting Name

Value

Description

Application

Location

Setting Name

Value

Description

Key Retrieval Web App

Web.config

MaxChallengeRetries

Default Value: 3

This is the number of tries a vendor is allowed to enter the correct activation code to retrieve the key and secret.

EdFi.Ods.SwaggerUI

Web.config

swagger.prepopulatedKey

Example: populatedTemplate

Optionally provides the value to prefill in the "key" field of auth.

EdFi.Ods.SwaggerUI

Web.config

swagger.prepopulatedSecret

Example: populatedTemplateSecret

Optionally provides the value to prefill in the "secret" field of auth.

EdFi.Ods.Admin.Web

Web.config

<initialization>

Example:

<initialization enabled="true"> <users> <add name="Test Admin" email="test@ed-fi.org" password="***REMOVED***" admin="true"> <sandboxes> <sandbox name="Populated Demonstration Sandbox" key="populatedSandbox" secret="populatedSandboxSecret" type="Sample" refresh="true" /> <sandbox name="Minimal Demonstration Sandbox" key="minimalSandbox" secret="minimalSandboxSecret" type="Minimal" refresh="true" /> </sandboxes> </add> </users> </initialization>

 

 

Custom configuration section for defining automatically created user accounts and sandboxes. Also configures automatic refreshes of sandboxes to a clean state. Each user entry will be created with the given email/password, and the sandboxes defined underneath it will also be created for the type and key/secret values.

EdFi.Ods.WebApi

Web.config

QueueAutoCreate

Example: 1

Whether or not a message queue should be created if it is not found. For Azure or Active Directory queues, this should be 0.

EdFi.Ods.WebApi

Web.config

CommitUploadCommandMessageEndPoint

Example: localhost

The server hosting the message queues.

EdFi.Ods.WebApi

Web.config

BearerTokenTimeoutMinutes

Example: 30

The amount of time that an inactive token remains valid.