Origami Frontend Components & Services

Readme: source-param-middleware

source-param-middleware has a support status of "dead". This means that there are no plans to fix any issues with this component, and it may stop working at any point. More information on the status of this component is available in the README. If you still rely on this component or have concerns, please contact the Origami team.

Middleware to require a valid source parameter in Express requests.

Deprecated: The CMDB API used by this package no longer exists. There is no direct replacement at the time of writing but there is an example of similar functionality implemented within the Origami Build Service.

Table Of Contents



Running the Source Param Middleware requires Node.js 10.x and npm. You can install with:

npm install @financial-times/source-param-middleware

API Documentation

This library provides Express middleware, familiarity is assumed in the rest of the API documentation. In the examples, app is your Express application. You'll also need to require the module with:

const sourceParam = require('@financial-times/source-param-middleware');

sourceParam( [options] )

This function returns a new middleware function which can be used to validate a source parameter. You can configure the created middleware with an options object if you need to override any defaults.

const requireSourceParam = sourceParam({
    cmdbApiKey: 'xxxxxx'

app.get('/your-api-endpoint', requireSourceParam, (request, response) => {
    // route code goes here...


The Source Param Middleware can be configured with a variety of options, passed in as an object to the sourceParam function. The available options are as follows:


This module has a full suite of unit tests, and is verified with ESLint. You can use the following commands to check your code before opening a pull request.

make verify  # verify JavaScript code with ESLint
make test    # run the unit tests and check coverage


New versions of the module are published automatically by CI when a new tag is created matching the pattern /v.*/.

Migration Guides

State Major Version Last Minor Release Migration guide
✨ active 2 N/A migrate to v2
⚠ maintained 1 1.0 N/A


If you have any questions or comments about this module, or need help using it, please either raise an issue, visit #origami-support or email Origami Support.


This software is published by the Financial Times under the MIT licence.

dead Origami v1 (Bower)
Switch component view

GitHub: source-param-middleware