ec.sdk

0.23.2

Getting Started

ec.sdk

This is the SDK for all ec.APIs by entrecode. By entrecode.

npm version Build Status Coverage Status Inline docs

Documentation can be found here. If you like to see some code look here.

Getting Started

In order to use this SDK you should be familiar with ec.APIs and the concepts behind those. Please refer to the official documentation to get a basic understanding. The documentation you are reading now will first introduce the basic concept when using the SDK. Secondly it is the complete API documentation for ec.sdk.

For every ec.API you will find an API connector. Use one of those to connect to a certain ec.API. Login and logout for ec.users are special cases and are done in Session API connector. All API connectors of a certain environment share some information. The most important one is any access token either received with Session#login or by calling Core#setToken. This means you can specifiy the token on any API connector and it will be automatically used by all other API connectors. Also it will be saved in a cookie with the name <environment>Token. If any API connector receives a token related Error (Problem) it will be automatically removed from all API connectors and a logout event is triggered. A special case is PublicAPI since this will store the token in a cookie containing the environment and Data Manager shortID of the PublicAPI (for example: stagebeefbeefToken).

Since version 0.13.0 you can create a stand-alone API Connector. By calling the constructor with new Session({ noCookie: true }); the API Connector won't share its token with other API Connectors.

Every action you take in the ec.sdk will be validated before it will be sent as a request to ec.APIs. This means that the provided json schemas are used.

Installation
ES6 / Webpack

Add the following in your webpack.config.js.

Then you can start coding:

Node

Require statements are different on node. Also, you probably don't want to share tokens in a node.js environment. You'll need to use noCookie or namespacing via cookieModifier.

Browsers

This is not officially supported. Mainly exists for usage in jsfiddles or similar.

Development

Here are two notes on developing ec.sdk:

  • Please use Conventional Commits
  • When releasing a new version use npm run release <semver-version> – This will build docs and changelog etc, npm publish is handled by travis.

Public API Cheatsheet

This is a quick cheatsheet with the most needed snippets to get started with the PublicAPI.

Setup

NodeJS / ec-user-token:

Frontend / public:

entryList

Always recommended: size and _fields.

Properties:

Get single entry:

Async Iterator Functions:

Keep in mind that you should sort the entryList after something that does not change, like created

liteEntry

entry

Properties:

Saving/Deleting:

API connectors

You can view an API connector as the entry point to an ec.api. Each connector is a class which must be instantiated with new and an optional environment. If no environment is specified the API connector will connect to live or rather production. It is possible to have multiple API connectors for multiple environments.

The two API connectors Core and Session are special cases. Core is the API connector every other inherits from and contains functionality shared by all other API connectors. Session is only used for login and logout of ec.users. This will allow you to implement tree shaking into your build and only the parts which are used will be in your bundle.

Core

Each API connector Class inherits directly from Core class. You cannot instantiate Core directly. Use one of the other API connectors instead.

new Core(urls: object, envOrOptions: any, environment: environment, cookieModifier: string?)
Parameters
urls (object) Object with URLs for each environment (key: environment, value: url)
envOrOptions (any = 'live')
environment (environment) The environment to connect to
cookieModifier (string?) An optional modifier for the cookie name (used by PublicAPI
Example
// will share token for 'userA'
const dmUserA = new DataManager({ environment: 'live', cookieModifier: 'userA' });
const apiUserA = new PublicAPI(shortID, { environment: 'live', cookieModifier: 'userA' }, true);

// will share token for 'userB'
const dmUserB = new DataManager({ environment: 'live', cookieModifier: 'userB' });
const apiUserB = new PublicAPI(shortID, { environment: 'live', cookieModifier: 'userB' }, true);

// will not share token and not save it in cookie as well
const dmStandAlone = new DataManager({ environment: 'live', noCookie: true });
Static Members
enableHistoryEvents(eventstoreLib)
Instance Members
canRefreshToken()
create(relation, resource, returnList)
deleteResource(relation, resourceID, additionalTemplateParams)
dispatch(fkt)
doRefreshToken()
follow(link)
getAvailableRelations()
getFilterOptions(relation)
getRefreshToken()
getToken()
hasToken()
hasRefreshToken()
on(label, listener)
preloadSchemas(schemas)
removeListener(label, listener)
resource(relation, resourceID, additionalTemplateParams)
resourceList(relation, options, additionalTemplateParams)
setToken(token, refreshToken)
setRefreshToken(token)
setUserAgent(agent)
setLocale(globalLocale)
timeToRefresh()

Session

This API connector can be used for login or logout into ec.apis. Login state will be avaliable to all other API connectors of the same environment.

new Session(envOrOptions: any, environment: environment?)

Extends Core_1.default

Parameters
envOrOptions (any)
environment (environment?) the environment to connect to
Example
const session = new Session();
return session.login(email, password)
.then(() => {
  const accounts = new Accounts();
  return accounts.me();
});
Instance Members
checkPermission(permission)
permissions(query)
login(email, password)
logout()
setClientID(clientID)

Accounts

API connector for Accounts API. Use this for ec.accounts only. It contains APIs for profile editing (change email, reset password, signup…), permissions, clients, and groups.

new Accounts(envOrOptions: any, environment: environment?)

Extends Core_1.default

Parameters
envOrOptions (any)
environment (environment?) the environment to connect to
Example
const accounts = new Accounts();
return accounts.me()
.then((me) => {
  return me.checkPemission('dm-create');
})
.then((allowed) => {
  if(!allowed){
    return showError();
  }

  return createDM(…);
};
Instance Members
account(accountID)
accountList(options)
changeEmail(email)
client(clientID)
clientList(options)
createApiToken(options)
createClient(client)
createGroup(group)
createInvites(options)
emailAvailable(email)
group(groupID)
groupList(options)
invalidPermissions()
invite(invite)
inviteList(options)
me()
resetPassword(email)
setClientID(clientID)
signup(email, password, invite)

Apps

This API connector can be used for Appserver APIs. It contains APIs for Apps, Platforms, Plugins, Builds and Deployments.

new Apps(envOrOptions: any, environment: environment?)

Extends Core_1.default

Parameters
envOrOptions (any)
environment (environment?) the environment to connect to
Instance Members
app(appID)
appList(options)
createApp(app)
stats(appID)
statsList()
types()

DataManager

API connector for DataManager API. It contains APIs for DataManagers, Models, Fields, Hooks, and Policies.

new DataManager(envOrOptions: any, environment: environment?)

Extends Core_1.default

Parameters
envOrOptions (any)
environment (environment?) the environment to connect to
Instance Members
createDataManager(datamanager)
createTemplate(template)
dataManager(dataManagerID)
dataManagerList(options)
getFileUrl(assetID, locale)
getImageThumbUrl(assetID, size, locale)
getImageUrl(assetID, size, locale)
getEvents(options)
stats(dataManagerID)
statsList()
template(templateID)
templateList(options)

PublicAPI

API connector for public APIs. This is the successor of ec.datamanager.js.

When instantiating this as an ecUser please set the ecUser flag to true. This will use the tokenStore for ecUsers and not the ones for each Data Manager. If you don't do this you must set the token with publicAPI.setToken(session.getToken());.

new PublicAPI(idOrURL: string, envOrOptions: any, ecUser: boolean?, environment: (environment | envOptions?))

Extends Core_1.default

Parameters
idOrURL (string) shortID or dataManagerID of the desired DataManager or url in old sdk like syntax.
envOrOptions (any = 'live')
ecUser (boolean? = false) if you are an ecUser it is best to set this to true
environment ((environment | envOptions?)) the environment to connect to, ignored when url is passed to idOrUrl.
Properties
account (object) : The current logged in account if it is a public user
config (object) : The public config of the connected Data Manager
dataManagerID (string) : unshortened dataManagerID
defaultLocale (string) : default locale
description (string) : description of the connected Data Manager
locales (Array<string>) : all available locales
models (Array<any>) : array of all models in the connected Data Manager
shortID (string) : shortened dataManagerID
title (string) : title of the connected Data Manager
Example
// node usage:
const { PublicAPI } = require('ec.sdk');
const api = new PublicAPI('beefbeef', { environment: 'live', noCookie: true }, true); // for ec user
// or
const api = new PublicAPI('9062c09a-c2a2-40dd-b1cf-332f497f9bde'); // with UUID as well
api.setToken(config.accessToken);

// frontend usage with session:
const session new Session();
let api = new PublicAPI('beefbeef', 'live', true);
// same as
api = new PublicAPI('https://datamanager.entrecode.de/api/beefbeef', 'willBeIgnored', true);
session.setClientID('rest');
return session.login('me@entrecode.de', 'letmein')
.then(() =>
  api.entryList('muffins', { awesome: true })
  .then(list => list.map((entry) => {
    if(isNoLongerAwesome(entry)){
      entry.awesome = false;
    }

    if(!entry.isDirty){
      return entry;
    }

    return entry.save();
  }));
Instance Members
asset(assetID)
assetGroupList(reload)
assetList(options)
changeEmail(email)
checkPermission(permission, refresh)
configurableSignup(body)
configurableSignupEdit(body)
createAnonymous(validUntil)
createAsset(input, options)
createAssets(input, options)
createDMAssets(assetGroupID, input, options)
createEntry(model, entry, levels)
deleteAsset(assetID)
deleteEntry(model, id)
dmAsset(assetGroupID, assetID)
deleteDmAsset(assetGroupID, assetID)
dmAssetList(assetGroupID, options)
doRefreshToken()
emailAvailable(email)
entry(model, id, options)
entryList(model, options)
getEvents(options)
getFieldConfig(modelTitle)
getFileUrl(assetID)
getFileVariant(assetID, thumb, size, type)
getImageThumbUrl(assetID, size)
getImageUrl(assetID, size, type)
getSchema(model, method)
getValidationToken(email)
login(email, password)
loginWithToken(body)
logout()
me(reload)
modelList(reload)
refCount(model, field, ids)
resetPassword(email)
resolve(reload)
setClientID(clientID)
signup(email, password, invite)
tag(tag)
tagList(options)
tokenList(options)
validateValidationToken(validationToken)
valueCount(model, field)

environment

You can define which API should be used with the environment parameter. Internally this is also used as key to store tokens into cookies (for browsers).

Valid value is one of live, stage, nightly, or develop.

environment

Type: ("live" | "stage" | "nightly" | "develop")

Example
// will connect to production https://editor.entrecode.de
const session = new Session('live');
// will connect to cachena https://editor.cachena.entrecode.de
const accounts = new Accounts('stage');
// will connect to buffalo https://editor.buffalo.entrecode.de
const dataManager = new DataManager('nightly');
// will connect to your local instances, well maybe
const accounts = new Accounts('develop');

options

In node context it is advised to configure token handling more specifically. Normally ec.sdk will share a given token with other API Connectors (see Core), in most cases this is not desired in node scripts. By providing an options object instead of an environment string when creating the API Conenctor you can overwrite the handling.

options

Type: Object

Properties
environment (environment) : The environment for the API Connector
noCookie (boolean) : True if you want to token-handling disabled (will overwrite Tokenstore name with random string)
cookieModifier (string) : Define a string for sharing multiple tokens.
ecUser (boolean) : True if the user is a ecUser. PublicAPI API Connectors will share across all shortIDs.
Example
// will not share any token with other API connectors (token name is appended with a generated shortID)
new PublicAPI('beefbeef', { noCookie: true });

// will share token with all `userA` PublicAPI Connectors for 'beefbeef'
new PublicAPI('beefbeef', { cookieModifier: 'userA' });

// will share token with all `userA` API Connectors, even DataManager and so on
new PublicAPI('beefbeef', { cookieModifier: 'userA', ecUser: true });
// same
new PublicAPI('beefbeef', { cookieModifier: 'userA' }, true);

// will share token with all PublicAPI Connectors for 'beefbeef'
new PublicAPI('beefbeef')

// will share token with all API connectors
new PublicAPI('beefbeef', { ecUser: true });
// same
new PublicAPI('beefbeef', 'live', true);

fileOptions

When creating assets, you can provide some options like fileName and others. These are directly mapped to DataManager options in the create Asset route. Use them to influence fileNames, duplicate handling and generation of default image variants.

fileOptions

Type: Object

Properties
fileName ((string | Array<string>)) : By default, a filename is generated using the original file's filename. Use this property to overwrite the filename – even sub-paths are possible this way. File extension has to be included, if desired. String Array if you upload multiple files at once.
preserveFilenames (boolean?) : set to false if you want a randomly generated filename. This way it is safe to set includeAssetIDInPath to false and get shorter URLs.
includeAssetIDInPath (boolean?) : set to false if you want shorter URls. If you have a conflicting filename, you'll get an error. Should therefore usually have the same value as preserveFilenames .
deduplicate (boolean?) : set to true to get back an already uploaded duplicate asset instead of an error, when the file already exists.
ignoreDuplicates (boolean?) : use if you don't want deduplication and you don't want to trigger an error if the file already exists. Normally it is better to just use the deduplicate flag instead.
defaultVariants ((number | Array<number>)?) : provide pixel value to generate an image variant right on upload. You'll get it back directly in the response, instead of after the first call.
Example
const assetList = await api.createDMAsset('myFiles', filePath, { deduplicate: true });

models

Collection of all models and their fields

models

Type: Object

Properties
modelName (field)

fields

Collection of all fields and their fieldDefinition

fields

Type: Object

Properties
fieldName (fieldDefinition)

fieldDefinition

A field definitions is the public version of model field config with field specific configs used in ec.forms.

fieldDefinition

Type: Object

Properties
title (string)
description (string)
type (string)
readOnly (boolean)
required (boolean)
unique (boolean)
localizable (boolean)
mutable (boolean)
validation (any)
default (any)
config (object)

Events and Errors

Whenever the ec.sdk receives an Error from any ec.API it will create not only an Error object but a Problem. Problems will contain the error codes from ec.APIs and all other information of the error. See below for a detailed description for Problems.

Amongst other all Erors or Problems are emitted as events in every API connector. You can subscribe to error events with Core#on. Additionally to error events there are also events for login and logout. Below you will find a description for each event type.

Problem

Class representing Errors sent by all entrecode APIs. Complies to {@link https://tools.ietf.org/html/draft-nottingham-http-problem-07 Problem Details for HTTP APIs}. Problems also comply to {@link https://tools.ietf.org/html/draft-kelly-json-hal-08 HAL resources} but this class won't include any special hal implementation (like getEmbedded or getLinks).

new Problem(error: object, locale: any)

Extends Error

Parameters
error (object) the error received from any entrecode API.
locale (any = 'en')
Instance Members
getAsArray()
long()
longAll()
short()
shortAll()

Event#login

Login event is emitted when a login succeeds with Session#login, PublicAPI#login, or PublicAPI#loginWithCode.

Event#login

Type: {access_token: string, refresh_token: string}

Event#logout

Logout event is emitted either on a successful logout with Session#logout or PublicAPI#logout or an API error with token related error codes. Will either have undefined or Problem as event parameter.

Event#logout

Type: (undefined | Problem)

Event#signup

Signup event is emitted when a login succeeds with PublicAPI#signup.

Event#signup

Type: {access_token: string, refresh_token: string}

Event#error

Error events are emitted whenever an API responds with an Error or Problem.

Event#error

Event#refresh

Refresh event is emitted when a token is automatically refreshed.

Event#refresh

Type: {access_token: string, refresh_token: string}

Event#refreshError

Refresh error event is emitted when a token is automatically refreshed.

Event#refreshError

Type: Problem

Resources

All resources used by ec.APIs and ec.sdk are HAL resources (Content-Type: application/hal+json). A HAL resources define the resources itself and relations to other resources.

Take a look at the API state digrams of ec.APIs for an overview of all relations and how they are connected (Accounts, AppManager, and DataManager). You can keep the state diagrams in mind since they tell you where to find any functionality inside ec.sdk. API connectors are the entry points, resources are – well – resources, and relations resemble the functions of them.

In the next section you will find the description of Resource and ListResource at the top. They define functionality all other resources. Like Resource#save or functions for pagination. Following those are the documentation of resources for any individual ec.APIs.

All resources which are from a specialized type (eg.: DataManagerResource) will contain properties with getter and setter implementations. So calling dataManager.title = 'new title' will change the title and mark the resource dirty (Resource#isDirty). Calling Resource#save would then save the resource with the ec.API.

Resource

Generic resource class. Represents {@link https://tools.ietf.org/html/draft-kelly-json-hal-08 HAL resources}.

new Resource(resource: object, environment: environment, traversal: object?, name: any, schema: any)
Parameters
resource (object) resource loaded from the API.
environment (environment = 'live') the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
name (any)
schema (any)
Properties
isDirty (boolean) : Whether or not this Resource was modified
Instance Members
getAvailableRelations()
create(relation, resource, returnList)
del()
delete()
getAll(properties)
getProperty(property)
follow(link, templateParams)
reset()
resolve()
getFilterOptions(relation)
resource(relation, resourceID, additionalTemplateParams)
resourceList(relation, options, additionalTemplateParams)
save(safePut, overwriteSchemaUrl)
setAll(resource)
setProperty(property, value)
validate(overwriteSchemaUrl)

ListResource

Generic list resource class. Represents {@link https://tools.ietf.org/html/draft-kelly-json-hal-08 HAL resources} with added support for lists.

Since version 0.8.1 ListResources are iterable, so you can use spread operator or for … of loops with them.

new ListResource(resource: object, environment: environment, traversal: object, name: string, itemSchema: object, ListClass: ListResource, ItemClass: Resource)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object) traversal from which traverson can continue.
name (string) name of the embedded resources.
itemSchema (object) optional schema for list items
ListClass (ListResource = ListResource) Class constructor for list types
ItemClass (Resource = Resource_1.default) Class constructor for item types
Properties
count (number) : the number of embedded items in this list
total (number) : the number of total items in this list
Instance Members
filter(iterator, retry)
find(iterator, retry)
getAllItems()
getFirstItem()
getItem(n)
map(iterator, retry)

filterOptions

List filter options with pagination, sorting, and filter. This can be used to apply all sorts of filter to a list request.

filterOptions

Type: Object

Properties
size (number)
page (number)
_levels (number)
_fields (Array<string>)
property (filter) : This could be any field name of a model
Example
accounts.accountList({ size: 25 }); // will result in a list with 25 entries
accounts.accountList({
  sort: ['email', '-created'], // sorted by email asc and created desc
  page: 3, // page 3 of a list with 10 entries
  property: 'exactlyThis', // filter exactly exactlyThis for property property
});
// for filter see below

filter

filterOptions can contain key value pairs with filter options for entry fields. These object will be applied when loading a ListResource.

filter

Type: Object

Properties
property ((string | filterObject))
Example
accounts.accountList({
  email: {
    search: 'andre', // email contains 'andre'
  },
  language: 'de', // language is exactly 'de'
  active: {
    exact: 'active', // is (exactly) in active state
  },
  created: {
    from: new Date(new Date().getTime() - 60000), // created 10minutes or less ago
  },
  permissions: { // has at least one of these permissions
    any: [
      'dm-user',
      'app-user',
    ],
  },
});

filterObject

filterObject

Type: Object

Properties
exact (string)
search (string)
from (string)
to (string)
any (Array<string>)
all (Array<string>)

HistoryEvents

HistoryEvents resource class

https://github.com/entrecode/ec.dm-history/blob/develop/data-transform.js#L35

new HistoryEvents(resource: object, environment: string, traversal: any)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (any)
Properties
count (number) : Event count in this list
scannedCount (number) : Count of scanned objects
items (Array<HistoryEvent>) : array of HistoryEvent objects
Instance Members
next()

HistoryEvent

HistoryEvent resource class

https://github.com/entrecode/ec.dm-history/blob/develop/data-transform.js#L35

new HistoryEvent(res: object, environment: string)
Parameters
res (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
Properties
modelID (string) : the model this event belongs to
shortID (string) : data manager short id
timestamp (Date) : time this event happened
null (string) : 'timestamp#entryID#randomNumber' the unique key from dynamodb
data (object) : data describing the event
oldEntryData (object) : old data describing the event
user (object) : the user responsible for this event
entryID (string) : the entry this event belongs to
type (string) : type defining what happened

Accounts Resources

The following section describes resources of Accounts.

AccountResource

Account resource class

new AccountResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
accountID (string) : The id of the Account
created (Date) : The Date on which this account was created
email (string) : The current email. Can be changed with Accounts#changeEmail
groups (Array<object>) : Array of groups this account is member of
hasPassword (boolean) : Whether or not this account has a password
hasPendingEmail (boolean) : Whether or not this account has a pending email
language (string) : The language for frontend usage
openID (Array<{sub: string, iss: string, pending: boolean, email: string, name: string}>) : Array of connected openID accounts
permissions (Array<string>) : Array of permissions
state (string) : State of the account.
Instance Members
addPermission(value)
addPermissions(value)
checkPermission(permission)
queryPermissions(query)
getAllPermissions()
tokenList()

AccountList

Account list resource class.

new AccountList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

TokenResource

TokenResource class

new TokenResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tokenID (string) : The id of this token
device (object) : Object containing device information
ipAddress (string) : The IP address
ipAddressLocation (string) : The location of the IP
isCurrent (boolean) : True if this is the current token
issued (Date) : The Date on which this token was issued
validUntil (Date) : The Date this token is valid until

TokenList

Token list class

new TokenList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

ClientResource

ClientResource class

new ClientResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
clientID (string) : The id of the client
callbackURL (string) : callback URL
config (clientConfig) : The config

clientConfig

Configuration of a client

clientConfig

Type: Object

Properties
tokenMethod (string) : Enum('query'|'cookie'|'body')
disableStrategies (Array<string>) : Array<Enum('facebook'|'google'|'password')>

ClientList

Client list class

new ClientList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

GroupResource

GroupResource class

new GroupResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
groupID (string) : The id of the group
name (string) : The group name
permissions (Array<string>) : Array of permissions
Instance Members
addPermission(value)
addPermissions(value)
removePermission(value)
removePermissions(value)
getAccounts()
addAccount(account)
setAccounts(accounts)
removeAccount(account)

GroupList

GroupList list class

new GroupList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

InviteList

Invite list class

new InviteList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

InviteResource

InviteResource class

new InviteResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tokenID (string) : The id of this token
device (object) : Object containing device information
ipAddress (string) : The IP address
ipAddressLocation (string) : The location of the IP
isCurrent (boolean) : True if this is the current token
issued (Date) : The Date on which this token was issued
validUntil (Date) : The Date this token is valid until
Instance Members
save()

InvalidPermissionsResource

InvalidPermissionsResource class

new InvalidPermissionsResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
invalidAccountPermission (Array<Permission>) : Array of invalid permissions linked to a AccountResource
invalidGroupPermission (Array<Permission>) : Array of invalid permissions linked to a GroupResource

AppManager Resources

The following section describes resources of AppManager.

AppResource

AppResource class

new AppResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
appID (string) : ID
shortID (string) : shortened ID
created (date) : created date
title (string) : title
hexColor (string) : color for frontend usage
Instance Members
codeSource(codeSourceID)
codeSourceList(options)
createCodeSource(codeSource)
createDataSource(dataSource)
createPlatform(platform)
createTarget(target)
dataSource(dataSourceID)
dataSourceList(options)
platform(platformID)
platformList(options)
target(targetID)
targetList(options)

AppList

App list class

new AppList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

TypesResource

TypesResource class

new TypesResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Instance Members
getAvailableCodeSources()
getAvailableDataSources()
getAvailablePlatforms()
getAvailableTargets()
getAvailableTypes(pluginName)
getCodeSource(type)
getCodeSourceSchema(type)
getDataSource(type)
getDataSourceSchema(type)
getPlatform(type)
getPlatformSchema(type)
getPlugin(pluginName, type)
getPluginSchema(pluginName, type)
getTarget(type)
getTargetSchema(type)

AppStatsResource

AppStatsResource class

new AppStatsResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
appID (array<object>) : the appID
title (string) : title
totalBuilds (string) :

of total builds

totalBuildSize (string) : total build size in Byte
monthlyBuilds (object) :

of monthly builds

totalDeployments (string) :

of total deployments

monthlyDeployments (object) :

of monthly builds

usedCodeSources (Array<string>) : code sources used by this app
usedDataSource (Array<string>) : data sources used by this app
usedTargets (Array<string>) : targets used by this app
usedPlatforms (Array<string>) : platforms used by this app

AppStatsList

AppStats list class

new AppStatsList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

PlatformResource

PlatformResource class

new PlatformResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
platformID (string) : the id
title (string) : title
config (any) : additional config, see schema for format
platformType (string) : platform type
Instance Members
addTarget(target)
build(buildID)
buildList(options)
createBuild(comment)
createDeployment(targetIDs, buildID, comment)
deployLatestBuild(targetIDs)
deployment(deploymentID)
deploymentList(options)
getCodeSource()
getDataSource()
getTargets()
hasTarget(target)
latestBuild(buildID)
latestDeployment()
loadCodeSource()
loadDataSource()
loadTargets()
removeTarget(target)
setCodeSource(codeSource)
setDataSource(dataSource)
setTargets(targets)

PlatformList

Platform list class

new PlatformList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

CodeSourceResource

CodeSourceResource class

new CodeSourceResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
codeSourceID (string) : the id
config (any) : additional config, see schema for format
codeSourceType (string) : codeSource type

CodeSourceList

CodeSource list class

new CodeSourceList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

DataSourceResource

DataSourceResource class

new DataSourceResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
dataSourceID (string) : the id
config (any) : additional config, see schema for format
dataSourceType (string) : dataSource type

DataSourceList

DataSource list class

new DataSourceList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

TargetResource

TargetResource class

new TargetResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
targetID (string) : the id
config (any) : additional config, see schema for format
targetType (string) : target type

TargetList

Target list class

new TargetList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

BuildResource

BuildResource class

new BuildResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
buildID (string) : the id

BuildList

CodeSource list class

new BuildList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

DeploymentResource

DeploymentResource class

new DeploymentResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
deploymentID (string) : the id

DeploymentList

CodeSource list class

new DeploymentList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

DataManager Resources

The following section describes resources of DataManager.

DataManagerResource

DataManager resource class.

new DataManagerResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
dataManagerID (string) : The id of the dataManager
template (string) : The templateID from which this dataManager was created
config (object) : The dataManager config
created (Date) : The Date this dataManager was created
description (string) : The description
hexColor (string) : The hexColor for frontend usage
locales (Array<string>) : Array of available locales
shortID (string) : Shortened DataManager#dataManagerID
title (string) : Title of the dataManager
defaultLocale (string) : Default locale for this dataManager
publicAssetRights (Array<string>) : right for public legacy assets
right (Array<string>) : really old rights, deprecated
Instance Members
account(accountID)
accountList(options)
asset(assetID)
assetGroup(assetGroupID)
assetGroupList(options)
assetList(options)
client(clientID)
clientList(options)
createAsset(input, options)
createAssetGroup(group)
createAssets(input, options)
createClient(client)
createModel(model)
createRole(role)
export()
getPublicAPI()
model(modelID)
modelList(options)
getEvents(options)
role(roleID)
roleList(options)
rebuildDoc()
stats()

DataManagerList

DataManager list resource class.

new DataManagerList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

ModelResource

Model resource class

new ModelResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
modelID (string) : The id of this Model
created (Date) : The Date on which this Model was created
description (string) : optional description
fields (Array<field>) : Array of fields
hasEntries (boolean) : Whether or not this Model has Entries
hexColor (string) : The hexColor for frontend usage
hooks (Array<hook>) : Array of hooks
locales (Array<string>) : Array of available locales
modified (Date) : The Date this Model was modified last
policies (Array<policy>) : Array of Policies
title (string) : Model title
titleField (string) : the field to used as a title for Entries
config (any) : the config for this model
Instance Members
getEvents(options)
save(safePut, overwriteSchemaUrl)
purge()
sync()

ModelList

Model list resource class.

new ModelList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

field

Object describing all properties of fields.

Field Documentation

field

Type: Object

Properties
title (string)
description (string)
type (string)
readOnly (boolean)
required (boolean)
unique (boolean)
localizable (boolean)
mutable (boolean)
validation ((string | object))
Example
{
  "method": "put",
  "restrictToFields": ["editableField"],
  "public": false,
  "roles": ["anonymous"],
  "conditions": [
    {
      "field": "_creator",
      "operator": "=",
      "variable": "accountID"
    },
    "or",
    {
      "field": "public",
      "operator": "=",
      "constant":true
    }
  ]
}

policy

Policy object

Policy Documentation

policy

Type: Object

Properties
method (string)
restrictToFields (Array<string>)
public (boolean)
roles (Array<string>)
conditions (Array<conditions>)

condition

Single condition object.

condition

Type: Object

Properties
field (string)
operator (string)
variable (string)

conditions

Multiple conditions can be used by putting them into an array.

conditions

Type: (condition | Array<(condition | conditions | string)>)

hook

Single hook object.

Hook Documentation

hook

Type: Object

Properties
hookID (string)
hook (string)
type (string)
description (string)
methods (Array<string>)
config (Object)

DMAccountResource

DM Account resource class

new DMAccountResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
accountID (string) : The id of the Account
email (string) : The current email.
hasPassword (boolean) : Whether or not this account has a password
oauth (Array<string>) : Array of connected oauth accounts
pending (boolean) : wheter or not this account is in pending state
blocked (boolean) : wheter or not this account is blocked
pendingUpdated (Date) : Date on which pending state got updated
created (Date) : Date on which this account was created
roles (Array<LiteRoleResource>) : Roles this account is member of
Instance Members
tokenList(options)

DMAccountList

Account list resource class.

new DMAccountList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

DMClientResource

DMClientResource class

new DMClientResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
clientID (string) : name/id of this client.
callbackURL (string) : url used for callback requests.
tokenMethod (Array<string>) : list of available token methods.
grantTypes (Array<string>) : list of available token methods.
disableStrategies (array<String>) : Strategies disabled in this client.
hexColor (string) : hex color for this client.

DMClientList

Client list class

new DMClientList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

RoleResource

Role resource class

new RoleResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
roleID (string) : The id of the role
name (string) : The name of the role
label (string) : A label for the role
accountsCount (number) : Number of accounts in this role
addUnregistered (boolean) : Whether or not to add unregistered users to this role
addRegistered (boolean) : Whether or not to add registered users to this role
accounts (array<LiteDMAccountResource>) : array of accountIDs associated to this role
Instance Members
accountList(options)

RoleList

Client list class

new RoleList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

TemplateResource

Template resource class

new TemplateResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
templateID (string) : The id of the template
name (string) : The name of the template
collection (object) : Postman collection
dataSchema (object) : JSON schema for collection data
version (string) : version of the template
Instance Members
createDM(body)
updateDM(dataManagerID)

TemplateList

Template list class

new TemplateList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

DMStatsResource

DMStatsResource class

new DMStatsResource(resource: object, environment: environment, traversal: object?)
Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
dataManagerID (array<object>) : the dataManagerID

DMStatsList

DMStats list class

new DMStatsList(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Instance Members
getAllItems()
getFirstItem()
getItem(n)

AssetGroupResource

AssetGroupResource class

new AssetGroupResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
assetGroupID (string) : The id of this asset group
policies (Array<object>) : Attached plolicies for this group
public (boolean) : Wether or not these assets are public
settings (object) : Settings for this asset group
Instance Members
asset(assetID)
assetList(options)

AssetGroupList

AssetGroup list class

new AssetGroupList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

AssetResource

AssetResource class

new AssetResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tokenID (string) : The id of this asset
title (string) : The title of this asset
tags (array<(string | object)>) : array of tags
created (Date) : Timestamp when this asset was created
type (string) : type of this asset, like image
files (array<object>) : all files associated with this asset
Instance Members
getFileUrl(locale)
getImageThumbUrl(size, locale)
getImageUrl(size, locale)
getOriginalFile()

AssetList

Asset list class

new AssetList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Instance Members
deletedAsset(assetID)
deletedAssetList(options)
download(writeStream)
tag(tag)
tagList(options)

DeletedAssetResource

DeletedAssetResource class

new DeletedAssetResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tokenID (string) : The id of this asset
title (string) : The title of this asset
tags (array<string>) : array of tags
created (Date) : Timestamp when this asset was created
type (string) : type of this asset, like image
files (array<object>) : all files associated with this asset
Instance Members
getFileUrl(locale)
getImageThumbUrl(size, locale)
getImageUrl(size, locale)
purge()
restore()

DeletedAssetList

Asset list class

new DeletedAssetList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

TagResource

Tag resource class

new TagResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tag (string) : tag name
count (number) : number of assets with this tag

TagList

Tag list resource class.

new TagList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

PublicAPI Resources

The following section describes resources of PublicAPI. You'll find the official API documentation at https://datamanager.entrecode.de/api/doc/<shortID>.

LiteEntryResource

LiteEntryResources are what the name suggests. They are lite entries. They only provide some basic functionality useful for showing unresolved (read: not loaded nested) entries.

new LiteEntryResource(liteResource: any, environment: any, traversal: any)

Extends Resource_1.default

Parameters
liteResource (any)
environment (any)
traversal (any)
Properties
_entryTitle (String) : The entry title of this LiteEntryResource
environment (String) : The entries environment
traversal (object) : traversal from which to continue
Instance Members
getModelTitle()
getTitle(field)
resolve()
save(safePut, overwriteSchemaUrl)

EntryResource

EntryResource class representing entries. Fields will have getter and setter. Setter will validate the input on a best effort basis.

If the schema for this Entry is not known on creating it, you will have to use EntryResource#creatEntry.

So called nested Entries will seamlessly integrate with EntryResources. When an entry is loaded with level parameter set it will return EntryResources for alle entry/entries fields. You don't need to do any other work except loading it leveled. For this to work properly the parent EntryResource will need to be instantiated with EntryResource#createEntry, otherwise the required JSON Schemas won't be stored in the cache.

new EntryResource(resource: object, environment: environment, schema: object, traversal: object?)

Extends LiteEntryResource_1.default

Parameters
resource (object) loaded resource
environment (environment) the environment of this resource
schema (object) JSON Schema for this entry
traversal (object?) traversal for continuing
Properties
id (string) : entry id (_id defined as well)
created (Date) : created date (_created defined as well)
modified (Date) : last modified date (_modified defined as well)
creator (string) : public user which created thie entry (_creator defined as well)
_entryTitle (string) : the title of this entry
datetime ((Date | string)) : fields with type datetime
entry ((EntryResource | LiteEntryResource)) : fields with type entry
entries (Array<(EntryResource | LiteEntryResource)>) : fields with type entries
asset (AssetResource) : fields with type asset
assets (Array<AssetResource>) : fields with type assets
account ((DMAccountResource | object | string)) : fields with type account
role ((RoleResource | object | string)) : fields with type role
other ((string | object | array | number)) : field with all other types
Example
publicAPI.entry('muffins', '1234567')
.then((muffin) => {
  show(muffin.title, muffin.deliciousness);
});
Instance Members
getFieldType(field)
getFileUrl(field, locale)
getImageThumbUrl(field, size, locale)
getImageUrl(field, size, locale)
getLevelCount()
getModelTitle()
getModelTitleField()
getTitle(field)
getEvents(options)
save(safePut)
validate()
validateField(field)
resolve(levels)

EntryList

Entry list class

new EntryList(resource: object, environment: string, traversal: object?, name: string, schema: object)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
name (string) name of the embedded items.
schema (object) JSON Schema for list items.
Instance Members
getAllItems()
getFirstItem()
getItem(n)

DMAssetResource

DMAssetResource class

new DMAssetResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
assetID (string) : The id of this asset
title (string) : The title of this asset
type (string) : The type of this asset
assetGroupID (string) : The assetGroupID this asset belongs to
caption (string) : The caption of this asset
created (Date) : The creation Date
modified (Date) : Date on which the asset got modified
creator (string) : The user who created this asset
creatorType (string) : The type of user the creator is of
duplicates (number) : The total number of duplicate assets
file (object) : Object describing the original file of this asset
fileVariants (Array<object>) : Array of all other file variants (not thumbs)
thumbnails (Array<object>) : Array of all thumbnails
isUsed (Boolean) : Whether or not this asses is used in any entry
mimetype (string) : Mimetype of the assets file
tags (Array<(string | object)>) : Array of tags
Instance Members
getFileUrl()
getFileVariant(size, thumb, type)
getImageThumbUrl(size)
getImageUrl(size, type)
getOriginalFile()

DMAssetList

Asset list class

new DMAssetList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

PublicAssetList

PublicAsset list class

new PublicAssetList(resource: object, environment: environment, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Instance Members
tag(tag)
tagList(options)

PublicAssetResource

PublicAssetResource class. PublicAssetResources can be obtained via two methods. Either by loading a Asset resource directly or by accessing it via an Entry which was not loaded with levels (nested). The latter one does not contain the tags property since it was created with the embedded version of this asset.

new PublicAssetResource(resource: object, environment: environment, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (environment) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tokenID (string) : The id of this asset
title (string) : The title of this asset
tags (array<(string | object)>) : array of tags
created (Date) : Timestamp when this asset was created
type (string) : type of this asset, like image
files (array<object>) : all files associated with this asset
isResolved (boolean) : whether or not this asset is resolved
Instance Members
getFileUrl(locale)
getImageThumbUrl(size, locale)
getImageUrl(size, locale)
getOriginalFile()
resolve()
save(safePut, overwriteSchemaUrl)

PublicTagList

Tag list resource class.

new PublicTagList(resource: object, environment: string, traversal: object?)

Extends ListResource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.

PublicTagResource

PublicTag resource class

new PublicTagResource(resource: object, environment: string, traversal: object?)

Extends Resource_1.default

Parameters
resource (object) resource loaded from the API.
environment (string) the environment this resource is associated to.
traversal (object?) traversal from which traverson can continue.
Properties
tag (string) : tag name
count (number) : number of assets with this tag

LiteDMAccountResource

LiteEntryResources are what the name suggests. They are lite entries. They only provide some basic functionality useful for showing unresolved (read: not loaded nested) entries.

new LiteDMAccountResource(liteResource: any, environment: any, traversal: any)

Extends Resource_1.default

Parameters
liteResource (any)
environment (any)
traversal (any)
Properties
accountID (String) : The id of this dm account
email (String) : The email of this dm account, undefined if anonymous
Instance Members
resolve()
save(safePut, overwriteSchemaUrl)

LiteRoleResource

LiteEntryResources are what the name suggests. They are lite entries. They only provide some basic functionality useful for showing unresolved (read: not loaded nested) entries.

new LiteRoleResource(liteResource: any, environment: any, traversal: any)

Extends Resource_1.default

Parameters
liteResource (any)
environment (any)
traversal (any)
Properties
accountID (String) : The id of this dm account
email (String) : The email of this dm account, undefined if anonymous
Instance Members
resolve()
save(safePut, overwriteSchemaUrl)

Changelog

0.23.2 (2022-04-20)

  • release version 0.23.2 (e334758)
  • SDK-161 type for file helper (e55687d)
  • chore: dependency update (87af953)
  • chore: manual fix for package-lock (ef277d7)
  • chore: package-lock update (19d217c)
  • test: remove wrongfully committed .only (6a5a332)
  • fix: throw proper error in PublicAPI members when not initialized (0749ca9)
  • fix: wrong throw in shortID getter (8689e71)

0.23.1 (2021-11-24)

  • release version 0.23.1 (0ea0f77)
  • chore: update package-lock (3bc836e)
  • fix: setUserAgent false negative (0570c9a)

0.23.0 (2021-10-19)

  • release version 0.23.0 (fef6593)
  • feat: add parenthesis for exact and multiple exact filter (d7fd95c)
  • freat: do not allow levels on single entry with filter requesst (0ec61c4)

0.22.14 (2021-09-13)

0.22.13 (2021-09-13)

0.22.12 (2021-09-10)

  • release version 0.22.12 (364ed2f)
  • feat: createApiToken options (3b20378)

0.22.11 (2021-05-27)

  • added configurableSignup example (226a204)
  • release version 0.22.11 (3fd256f)
  • Update package.json (b7b5eef)
  • chore: updated release.sh (8fe141a)
  • feat: setter for email in DMAccountResource (00f2c29)
  • fix: configurableSignupEdit pending type (6dd8e24)

0.22.10 (2021-04-20)

  • release version 0.22.10 (2e715ff)
  • fix: Use file.url in DMAssetResource#getFileUrl (2685818)

0.22.9 (2021-03-25)

  • release version 0.22.9 (d026613)
  • feat: add account to group by email (2207538)

0.22.8 (2021-03-23)

  • release version 0.22.8 (8af836d)
  • feat: defaultVariants for fileOptions (325f8e3)

0.22.7 (2021-03-11)

  • release version 0.22.7 (a1a7702)
  • fix: respect fileName in createDMAssets [CMS-3343] (28f4831)

0.22.6 (2021-03-05)

0.22.5 (2021-03-05)

  • release version 0.22.5 (7c8d666)
  • feat: adds permission query to account and session (0c6e58c)

0.22.4 (2021-02-03)

  • release version 0.22.4 (830fff5)
  • chore: updated documentation.js (5ad9b20)
  • chore(deps): bump highlight.js from 9.18.1 to 9.18.5 (294f5f8)
  • chore(deps): bump ini from 1.3.5 to 1.3.7 (008994a)
  • chore(deps): bump lodash from 4.17.15 to 4.17.19 (23e55bc)
  • test: removed references to stash (21ec786)
  • doc: updated references to dm-history repository (8cc08b7)

0.22.3 (2020-11-18)

  • release version 0.22.3 (8dcaa4b)
  • remove greenkeeper badge (004b8ba)
  • chore: json-schema-remote 1.6.1 (6bbbb3a)
  • fix: remove double deduplicate :-D (0d62d7c)

0.22.2 (2020-07-16)

0.22.1 (2020-07-16)

  • adds missing dependency (29c7837)
  • release version 0.22.1 (07b3625)
  • remove broken dependencies (3e271fa)

0.22.0 (2020-06-16)

  • release version 0.22.0 (c047d37)
  • fix: typings (5db98c0)
  • tests: drop node 8 and 10, adds node 14 (122fc75)
  • chore: patchday (600c592)
  • chore(package): update documentation to version 13.0.0 (58c4866)
  • chore(package): update lockfile package-lock.json (74680d3)

0.21.24 (2020-06-03)

0.21.23 (2020-01-31)

  • release version 0.21.23 (c1655a5)
  • fix: removed dispatch in dmAccountResource.tokenList (75e745e)

0.21.22 (2020-01-31)

  • release version 0.21.22 (1c1c083)
  • fix: added config for authTokens resource in account (b2e858f)

0.21.21 (2020-01-31)

  • release version 0.21.21 (17eec86)
  • chore: added runme script for manual testing (b6cc1f6)
  • chore(package): update lockfile package-lock.json (5748d99)
  • chore(package): update lockfile package-lock.json (765db48)
  • chore(package): update mocha to version 7.0.1 (abd156c)
  • chore(package): update sinon to version 8.0.0 (3fb6838)
  • feat: DMAuthToken API CMS-3159 / DEAL-288 (e323ebf)

0.21.20 (2020-01-09)

  • release version 0.21.20 (aa1f160)
  • fix: adds getter for comment APPSITE-1549 (841f482)

0.21.19 (2020-01-09)

  • release version 0.21.19 (6d8c1a7)
  • feat: adds comment to deployment and build APPSITE-1549 (df07ebe)
  • fix: typo in log message (62d6446)

0.21.18 (2019-11-15)

0.21.17 (2019-10-21)

  • release version 0.21.17 (ae86eff)
  • fix: DataManager#createTemplate (c072efe)

0.21.16 (2019-10-18)

  • release version 0.21.16 (81da437)
  • fix: fix error in ec.errors and json-schema-remote SDK-148 (1568d43)
  • feat: _links enumerable in DMAssetResource for asset helper SDK-147 (9e0c4cf)

0.21.15 (2019-10-11)

  • release version 0.21.15 (6845121)
  • fix: fix AssetGroup docs (4145727)
  • fix: return Type on createInvite (2be1112)
  • doc: add notes for development (6755c15)
  • chore: updates package-lock (064dcc4)

0.21.14 (2019-08-29)

  • release version 0.21.14 (5545325)
  • fix: create group in Accounts now supports accounts (207acac)

0.21.13 (2019-08-16)

  • release version 0.21.13 (2695d00)
  • feat: updates dm stats resource SDK-143 (1d288ba)

0.21.12 (2019-08-13)

  • release version 0.21.12 (e793cdc)
  • feat: creator for Build and Deployment APPADMIN-934 (458bcbd)

0.21.11 (2019-08-01)

  • release version 0.21.11 (01bb812)
  • fix: remove title setter for plugin resources (6bb8bb4)

0.21.10 (2019-08-01)

  • release version 0.21.10 (d6d498f)
  • feat: plugin type when title is empty (4675445)
  • fix: pin to json-schema-remote 1.4.0 (4616336)

0.21.9 (2019-08-01)

  • release version 0.21.9 (59c0316)
  • feat: add title (from config._title) as property to plugin Resoruces (1f4a686)

0.21.8 (2019-07-15)

  • release version 0.21.8 (b957f98)
  • fix: fix loading single DMAssetResource from Group SDK-142 (5a2b6a1)
  • fix: Resource#reset for sorted arrays SDK-141 (b8425b7)
  • fix: should fix still dirty after save SDK-140 (37a4d1c)
  • feat: public validate function for Resources SDK-136 (eb75050)
  • feat: requst cache for getFieldConfig SDK-139 (03150b4)
  • test: Test for SDK-140 still dirty after save (56c6648)

0.21.7 (2019-07-05)

  • release version 0.21.7 (55103d3)
  • feat: add template param to DataManagerResource (5fdc4e5)

0.21.6 (2019-06-14)

  • release version 0.21.6 (81bce26)
  • feat: delete Asset/Entry/Resource by id SDK-130 (af84d14)
  • chore: eslint fixes in test file (f6ddfd0)
  • doc: fixed docs for createAnonymous SDK-137 (11d94dd)

0.21.5 (2019-06-13)

  • release version 0.21.5 (c28313a)
  • feat: removed mandatory logout befor new login (c85591d)

0.21.4 (2019-05-22)

  • release version 0.21.4 (84cb5de)
  • feat: chunking refCount when > 500 ids SDK-135 (3e68a54)

0.21.3 (2019-05-22)

  • release version 0.21.3 (b37557b)
  • feat: valueCount in PublicAPI for DEAL-1217 (e11fcc7)
  • fix: typings for envOrOptions in API Conector constructor (407e2aa)

0.21.2 (2019-05-17)

  • release version 0.21.2 (3553b4b)
  • fix: invalid uri / error in traverson.from SDK-134 (11cdd49)

0.21.1 (2019-05-16)

  • release version 0.21.1 (6261728)
  • fix: asset negotiation with template params (d7797ee)

0.21.0 (2019-05-16)

  • release version 0.21.0 (a4582e9)
  • feat: drop support for Buffers in createAssets SDK-133 (d2a95c5)
  • feat: dropped PublicAPI#getDataManagerResource (c4f160b)
  • feat: support tags in assets as object SDK-128 (cfec54e)
  • chore: changed superagent version - minimizing size with dedup (469d983)
  • chore: optimize traverson handling in Resource SDK-131 (808a683)
  • chore: removed lodash.isEqual SDK-129 (3aba697)
  • chore: removes unused validator lib (153e64c)
  • tests: removed only in tests (8a2b36e)

BREAKING CHANGE

  • dopped PublicAPI#getDataManagerResource

This function is only used by ec user and they are capable of getting their DataManagerResource by their own. ;-)

Something like await dmApi.dataManager(publicAPI.dataManagerID); will help.

  • Dropped support for asset upload via Buffer

Before 0.21.0 you could upload assets via Buffer (eg. loaded with fs.readFile or loaded by url). This was dropped because it was hardly used and assets neue are capable of uploading via url which should be sufficient.

If are using asset upload via Buffer, you should be capable of migrating by yourself. Possible solutions are saving the file to disc and upload with path string or uploading directly with an url.

0.20.11 (2019-05-03)

  • merge release/0.20.10 into master (5605797)
  • release version 0.20.11 (67b86cc)
  • feat: retry flag for ListResource#map/find/filter SDK-120 (cbf6039)
  • doc: sort documentation SDK-127 (725bf79)

0.20.10 (2019-04-26)

  • release version 0.20.10 (2c201ec)
  • fix: invalid environment error in DataManager#getPublicAPI() SDK-121 (0c6cced)
  • feat: refCount in PublicAPI SDK-126 (852e2c6)
  • chore(package): update documentation to version 10.0.0 (4d2e228)
  • chore(package): update lockfile package-lock.json (2ff3994)

0.20.9 (2019-04-17)

  • release version 0.20.9 (ed45c9e)
  • fix: only perform refresh is dispatch if token is set (9edf52e)

0.20.8 (2019-04-16)

  • merge release/0.20.7 into develop (21d573c)
  • release version 0.20.8 (8d3738d)
  • fix: wrong cookie on refresh token (4c0a2fe)

0.20.7 (2019-04-16)

  • release version 0.20.7 (28e0cdb)
  • feat: add Core#get/hasRefreshToken() (ca4f262)

0.20.6 (2019-04-16)

  • only set clientID if not set (a7ec5ae)
  • release version 0.20.6 (8314873)
  • feat: overwrite clientID on PublicAPI auth api (5b95fed)
  • fix: inner error typo in Core#dispatch (468137e)

0.20.5 (2019-04-16)

  • release version 0.20.5 (44fc98d)
  • fix: do not save tokens in PublicAPI#loginWithToken (4a87f3e)

0.20.4 (2019-04-15)

  • release version 0.20.4 (97ef4b8)
  • feat: clientID on configurableSignupEdit and loginWithToken SDK-123 (eef12d9)

0.20.3 (2019-04-15)

  • release version 0.20.3 (d4ba001)
  • feat: changed configurableSignupEdit return signature (bd12d1b)
  • doc: fix jsdoc for loginWithToken (16d3ec1)

BREAKING CHANGE

  • method signature changed – same as with 0.20.0

0.20.2 (2019-04-15)

  • release version 0.20.2 (a9ff97d)
  • feat: grantTypes in DMClientResource editable SDK-125 (ba45bf2)

0.20.1 (2019-04-15)

0.20.0 (2019-04-11)

  • release version 0.20.0 (a1ac5ae)
  • feat: allow other clientIDs than rest SDK-123 (d1733b8)
  • feat: refresh token handling in TokenStore SDK-123 (f779764)
  • feat: refresh token on PublicAPI requests SDK-123 (655f59f)

BREAKING CHANGE

  • response signature changed for PublicAPI#login and PublicAPI#signup

before:

after:

0.19.4 (2019-04-04)

  • release version 0.19.4 (9a54f45)
  • fix: thow on PublicAPI#me without account (c06d1d4)
  • fix(package): update superagent to version 5.0.2 (76c073b)
  • chore(package): update lockfile package-lock.json (f534ec8)

0.19.3 (2019-03-29)

  • release version 0.19.3 (8dca5f7)
  • feat: possibly more vebose 5xx errors (3ef912c)
  • test: remove node 6 from travis (f28ac94)

0.19.2 (2019-03-26)

  • release version 0.19.2 (a69caf6)
  • feat: add method and path to non json errors (b159ae5)
  • feat: update ec.errors with new error 002 (f077970)
  • chore: prettier applied to all files (788af11)

0.19.1 (2019-03-25)

  • release version 0.19.1 (27de743)
  • feat: memory only fieldConfig cache SDK-96 (ee955df)

0.19.0 (2019-03-25)

  • release version 0.19.0 (83e89e7)
  • SDK-118 add _count to filter options (08f13a0)
  • feat: send _list with all entryList requests SDK-117 (ab5e19a)

BREAKING CHANGE

  • PublicAPI#entryList will send _list=true with all requests.

This will only work with DataManager ^0.20.0. There is no change in your code needed, but this will fail on DataMAnager <0.20.0.

0.18.7 (2019-03-22)

  • release version 0.18.7 (8e86e91)
  • Revert "feat: getFieldConfig caching SDK-94" (a445e84)

0.18.6 (2019-03-18)

  • release version 0.18.6 (6adc2f9)
  • feat: adds pagination for HistoryEvents SDK-116 (93ad07d)
  • feat: create PublicAPI from uuid SDK-107 (010c89c)
  • feat: getFieldConfig caching SDK-94 (3d0dd39)

0.18.5 (2019-03-14)

  • release version 0.18.5 (c51f376)
  • fix: EDITOR-285 roles should use title in lite resource (9697829)

0.18.4 (2019-03-11)

  • release version 0.18.4 (bb20e49)
  • feat: edit of blocked state in DMAccountResource (647c62b)
  • chore: fix changelog (d95a498)

0.18.3 (2019-03-08)

  • release version 0.18.3 (8a75281)
  • feat: SDK-115 adds name to group mock (5d359dc)
  • feat: SDK-117 support blocked in dm accounts (c042e78)
  • test: SDK-115 adds tests to group for name property (33bc0d7)

0.18.2 (2019-02-18)

  • release version 0.18.2 (80cd2de)
  • fix: adds missing property accountsCount to RoleResource (95840f6)

0.18.1 (2019-02-15)

  • release version 0.18.1 (bcecb68)
  • fix: name of LiteRoleResource (0cf9403)

0.18.0 (2019-02-07)

  • release version 0.18.0 (84ae43f)
  • feat: Edit role membership in DMAccountResource SDK-113 (fd0b3fb)
  • feat: implement History v3 SDK-114 (da188c2)
  • feat: RoleResource using DMAccountList now. Accounts are not embedded anymore. (9e09e7d)
  • style: formatting of mock jsons (f6dd6c6)
  • refactor: remove unused code in AccountResource (40baf3a)

BREAKING CHANGE

  • History API v2 Support will be removed with this release.

You will need to use #getEvents() instead of #getPastEvents(). The signature of HistoryEvents and HistoryEvent has changed! Support for EventSource is currently disabled.

Before:

After:

  • RoleResource does not have a account property anymore. Must use RoleResource#accountList() or roleResource#resourceList('dmAccount', options).

Before:

After:

0.17.21 (2019-02-04)

  • release version 0.17.21 (f29fb66)
  • fix: TokenList in AccountResource with filter (3e9a0ad)
  • fix(package): update @types/validator to version 10.9.0 (414d1eb)
  • chore(package): update lockfile package-lock.json (cb8567c)
  • chore(package): update lockfile package-lock.json (030f6b4)
  • chore(package): update sinon to version 7.2.3 (74049b5)

0.17.20 (2019-02-01)

  • release version 0.17.20 (6e23487)
  • chore: remove direct highlight dependency (6e15f0d)
  • feat: add token list to resources in AccountResource SDK-111 (e3d2e43)
  • feat: getter and setter for GroupResource#account (560cbf8)

0.17.19 (2019-01-29)

  • added cheatsheet (9ff3a6e)
  • CMS-3178: adds method and url to Problem (dcbac06)
  • release version 0.17.19 (4131a19)
  • SDK-104 add original stack to Problem (8bac352)
  • SDK-105 add doc for setter in platform resource (699ec78)
  • fix: fix ListResource#find type errors (a784a33)
  • fix: typings on PublicAPI#entry (24c8270)
  • chore: update dependencies (ae89328)

0.17.18 (2018-11-30)

  • release version 0.17.18 (063f9c7)
  • fix: resource loading with additional params (deb68de)

0.17.17 (2018-11-30)

  • release version 0.17.17 (a2dfcdc)
  • fix: adds wildcard type to fieldDefinition (4befdb8)
  • fix(package): update superagent to version 4.0.0 (782af85)
  • chore: switched to prettier code formatting (0befe8d)
  • chore(package): update @types/node to version 10.12.10 (3fc6da9)
  • chore(package): update lockfile package-lock.json (b623dd4)
  • chore(package): update lockfile package-lock.json (250bc0c)

0.17.16 (2018-11-27)

  • release version 0.17.16 (cfb25fc)
  • fix: typings of getFieldConfig fixed SDK-101 (6dc914d)
  • doc: optimized type docs, SDK-90 and CMS-3153 (343f59e)
  • docs: adds missing type to PublicAPI#entry (92d4833)

0.17.15 (2018-11-26)

  • release version 0.17.15 (016bfc8)
  • refactor: optimized bugfix of fex and ruben (84c848e)
  • fix: resourceList filter with id.search SDK-102 (c2098ad)

0.17.14 (2018-11-23)

  • changed hard coded publicTagList relation (d55a082)
  • release version 0.17.14 (73ea530)

0.17.13 (2018-11-23)

  • fixed tag list relation (ec:api/tags -> ec:tag) (51d0f43)
  • release version 0.17.13 (d97b5f2)

0.17.12 (2018-11-15)

  • release version 0.17.12 (f8dc626)
  • chore: updated package-lock (8425fda)

0.17.11 (2018-11-15)

  • adds tags to available resources in public api (583b416)
  • release version 0.17.11 (bf5d853)
  • chore: updates dependencies (0adbd66)
  • chore: use npm install not npm ci in travis builds (671ff15)
  • feat: tag and tag list on PublicAPI SDK-98 (d1580fe)

0.17.10 (2018-11-08)

  • release version 0.17.10 (92281e2)
  • feakt: support for auth api aka. magic link login DEAL-441 (e5e4a05)
  • feat: SDK-95 typings for field definition (2bde2f8)
  • feat: SDK-97 get single entry with filter (0220234)

0.17.9 (2018-10-16)

  • release version 0.17.9 (7dbbfd6)
  • chore: fix doc build with highlight.js (2e2d2f1)
  • chore: updated dependencies (4f7e0cc)
  • chore: updates json-schema-remote (64046dc)

0.17.8 (2018-10-05)

  • release version 0.17.8 (1028d0a)
  • SDK-93 locale optional in PublicAssetResource (db77ce9)

0.17.7 (2018-09-28)

  • release version 0.17.7 (735e981)
  • fix: dirty detection on JSON fields SDK-92 (646fa72)
  • chore: patchday (cb81cd1)

0.17.6 (2018-09-14)

  • release version 0.17.6 (810bfa6)
  • chore: updated traverson with react support (69ff5c3)

0.17.5 (2018-09-10)

0.17.4 (2018-09-10)

  • release version 0.17.4 (249944a)
  • fix: typescript strict option fixes (873be28)

0.17.3 (2018-09-06)

  • release version 0.17.3 (6afb9ee)
  • fix: also import Symbol polyfill in Resources (d36067f)

0.17.2 (2018-09-03)

  • release version 0.17.2 (de7a6d5)
  • fix: handling of DMAsset and PublicAsset Resources (9fac177)
  • chore: adds npm i to release script (d3e38ed)
  • chore: move npm to correct location (f77ae0e)
  • chore: updated package-lock (f650051)

0.17.1 (2018-09-03)

  • release version 0.17.1 (b305810)
  • fix: adds Symbol polyfill for react (a82a03b)
  • fix: use new version of traverson without nextTick (d14351a)

0.17.0 (2018-08-31)

  • release version 0.17.0 (a7d8df8)
  • fix: removed eventsource dependency to support react (a68dff8)
  • doc: fixed typo (91aba46)

BREAKING CHANGE

  • This change will break usage when using HistoryEvents. You will need to

inject 'eventsource/lib/eventsource-polyfill' manually in you project.

before:

after:

0.16.28 (2018-08-27)

  • release version 0.16.28 (99f72ea)
  • fix: do not use assert from node, use deep-equal instead (3772680)
  • chore: updated npm access key in travis (8000fcd)

0.16.26 (2018-08-03)

  • release version 0.16.26 (4b1493c)
  • fix: safe put header names (c119745)

0.16.25 (2018-07-31)

  • release version 0.16.25 (29e6e96)
  • fix: use templated schema in invite resource (2a22622)

0.16.24 (2018-07-27)

  • release version 0.16.24 (a074176)
  • feat: setAccounts in GroupResource to replace all accounts SDK-83 (0d59faa)

0.16.23 (2018-07-24)

  • release version 0.16.23 (6937973)
  • feat: deduplicate flag in DMAsset upload (c8de97d)
  • chore: adds new npm token token to travis deploy (ef52f68)

0.16.22 (2018-07-13)

  • release version 0.16.22 (2563116)
  • feat: uri encode publicAPI query strings SDK-81 (2006fb2)

0.16.21 (2018-07-09)

  • release version 0.16.21 (33e9e9e)
  • feat: add/remove Accounts and removePermission(s) from Group SDK-78 (a0846f4)
  • feat: create invites without options (65205bd)
  • test: tests for proper invite resource (1d2f366)
  • doc: sorting of invites resources (1ac55b5)

0.16.20 (2018-07-06)

0.16.19 (2018-07-06)

  • release version 0.16.19 (509d3b6)
  • feat: invites as proper resources SDK-79 (9c2f97b)

0.16.18 (2018-07-04)

  • release version 0.16.18 (b457c25)
  • fix: create resolved entry with levels with schemas (79bb10c)

0.16.17 (2018-07-04)

  • release version 0.16.17 (ce78bc7)
  • fix: level reload of EntryResources (1fe4a46)
  • fix: typings for list map, find, filter (c9e94b0)
  • feat: fieldConfig in PublicAPI SDK-77 (28e42db)

0.16.16 (2018-06-22)

  • release version 0.16.16 (cfcee62)
  • fix: token response handling in signup (017b881)

0.16.15 (2018-06-22)

  • release version 0.16.15 (03bd576)
  • fix: signup with clientID rest should use json posts (7e31b5d)

0.16.14 (2018-06-19)

  • release version 0.16.14 (89e486e)
  • feat: entry reload with levels support (cf03985)

0.16.13 (2018-06-15)

  • release version 0.16.13 (c85eef4)
  • fix: remove additional properties from toOriginal, in validate now (cd84a4a)

0.16.12 (2018-06-14)

  • release version 0.16.12 (3358558)
  • fix: all filter with space instead of + (67b5746)
  • chore: updated package-lock (1957474)
  • chore(package): update sinon to version 6.0.0 (c5dadfb)

0.16.11 (2018-06-08)

  • release version 0.16.11 (4dee7c0)
  • fix: history in entries linkt not found SDK-61 (a8f6f60)

0.16.10 (2018-06-07)

  • release version 0.16.10 (fb78a4e)
  • doc: more doc for cookie handling (1380f2a)
  • chore: updated package and package-lock (2f09fe7)
  • fix: compatibility with typescript 2.9.x SDK-75 (24c8824)

0.16.9 (2018-06-04)

  • release version 0.16.9 (dd42b00)
  • chore: patches, pin to typescript 2.8.x for now (a4d2bfe)

0.16.8 (2018-06-04)

  • release version 0.16.8 (633f74d)
  • updated doc (592eec3)
  • fix: should fix typecast errors SDK-74 (477fd9b)

0.16.7 (2018-05-29)

  • release version 0.16.7 (c4a543b)
  • feat: add delete alias for Resource#del (fe477b1)
  • feat: Core#setLocale for localisation of error output (where available) (a0e5222)
  • feat: EntryList#getItem(n) and #getFirstItem() without typecast (ad72872)
  • feat: EventEmitter on a per environment base (cc898ca)
  • feat: getFilterOptions for all shortened relations (e39aa3a)
  • feat: rebuildDoc und DataManagerResource (b6a7d32)
  • fix: spare request in PublicAPI#me() SDK-24 (eac533d)

0.16.6 (2018-05-28)

  • release version 0.16.6 (3711bbc)
  • feat: add url upload option for dmAssets (3716c3d)

0.16.5 (2018-05-28)

  • release version 0.16.5 (a2cf4cb)
  • feat: assetGroupID property for DMAssets (de8e969)

0.16.4 (2018-05-25)

  • release version 0.16.4 (be2d5fd)
  • feat: assetGroupList on PublicAPI root SDK-71 (4484792)
  • feat: removed Account#createAPIKey (be6536d)
  • test: test for _fromEventNumber query param (297d614)
  • fix: token in history as query param and make singleton SDK-69 SKD-70 SDK-43 (00f4f1a)
  • chore(package): update documentation to version 7.0.0 (052d9d5)

BREAKING CHANGE

  • removed duplicate function

before:

after:

0.16.3 (2018-05-22)

  • release version 0.16.3 (614fda7)
  • feat: adds pending, pendingUpdated, and created to DMAccountResource (9fdae17)

0.16.2 (2018-05-17)

  • added privacy link to docs (84159f7)
  • release version 0.16.2 (bfac202)
  • chore: add node 10 to travis (60653a3)
  • chore(package): update sinon to version 5.0.0 (58d5475)
  • fix: added missing properties to DataManagerResource SDK-65 (a3584f6)
  • fix: default for environment when options is used SDK-63 (5d3a787)
  • fix: fixed wrong typings in Build and Deployment Resources (22272bd)
  • fix: load of me() in PublicAPI did not reload properly SDK-32 (b76e536)
  • fix(package): update @types/node to version 10.0.3 (ef273d4)
  • fix(package): update validator to version 10.0.0 (ba3d20a)
  • feat: standart error format for 5xx errors SDK-56 (002b768)

0.16.1 (2018-04-27)

0.16.0 (2018-04-20)

  • feat: title property in DMAccountResource and LiteDMAccountResource (2be7671)
  • release version 0.16.0 (497a6e5)
  • feat: LiteDMAccountResource in RoleResource (d2ecc03)
  • fix: isDirty detection for LiteRoleResources and LiteDMAccountResources (960e94c)

BREAKING CHANGE:

RoleResource's accounts field now has an array of LiteDMAccountResources not strings

before:

after:

0.15.0 (2018-04-18)

  • release version 0.15.0 (de10b42)
  • doc: doc for HistoryEvent (6edfa19)
  • feat: LiteDMAccountResource and LiteRoleResource (8f46c82)

BREAKING CHANGE

  • introducing LiteDMAccountResource and LiteRoleResource, will break existing account/role fields

before:

0.14.2 (2018-04-18)

  • release version 0.14.2 (8a647b0)
  • feat: HistoryEvents resource for past events (29c86b6)
  • fix: body parsing of empty error responses SDK-55 (d6b5820)

0.14.1 (2018-04-16)

  • release version 0.14.1 (981fc00)
  • fix: DMClientResource getter and setter wrong (123841d)
  • fix: when saving a resource only change object internals on !==204 response (9574a60)

0.14.0 (2018-04-16)

  • release version 0.14.0 (0a34e00)
  • fix: removed duplicate create/signup anon function (0038b75)
  • fix: updated ec.errors to 0.2.0 to support transpiling (dd69684)

BREAKING CHANGE

  • removed signupAnonymous() use createAnonymous(validUntil).

before:

after:

0.13.19 (2018-04-13)

  • release version 0.13.19 (67e6bbf)
  • feat: convert schema validation errors into entrecode error format SDK-4 SDK-6 (5ca8d2c)

0.13.18 (2018-04-10)

  • release version 0.13.18 (e1310aa)
  • fix: toOriginal in EntryResource when values are undefined (3e8163b)

0.13.17 (2018-04-06)

  • release version 0.13.17 (55bea2c)
  • feat: drop schemas on ModelResource#save (9f6d007)
  • feat: negotiate local files in DMAssetResource SDK-40 (d7b8381)
  • feat: support negotiating of assets neue in EntryResource SDK-42 (7884bf1)
  • fix: call super instead of this (5133fe8)
  • fix: fixed isDirty detection when linked type gettes were called (8ac7b5d)

0.13.15 (2018-03-28)

  • release version 0.13.15 (0ee4a47)
  • fix: fixed wrong imports (2aae4f9)

0.13.14 (2018-03-28)

  • release version 0.13.14 (6f1fb02)
  • feat: newHistory for DataManagerResource, ModelResource, EntryResource, and PublicAPI (6dfb8dd)
  • chore: applied new codestyle <3 (fdd14bc)
  • fix: removes dummy resource in Resources (0352921)

0.13.13 (2018-03-23)

  • refactor: prepared history helper for usage in other resources than DataManager API Connector (26051e5)
  • 0.13.13 beta (de14f3f)
  • release version 0.13.13 (03b07b6)
  • chore: fixed some eslint errors (1ec3f7b)
  • chore: removed trailing space in release.sh (aeb20db)
  • chore: version 0.13.13-beta.3 (e2e2866)
  • test: disabled history test, mocking invalid (228b4f1)
  • feat: entryList, entry, dmAssetList, and dmAssetResource as generics (6e82550)
  • feat: make available relations accessible SDK-2 (5fa4405)
  • feat: support DMAssets in EntryResource SDK-28 (e5a8362)
  • refactor: even more tslint fixes (0876cf9)
  • refactor: renamed generic asset into dmAsset (c69e70e)
  • fix: relation for generic model list (04266d2)

0.13.12 (2018-03-23)

  • release version 0.13.12 (6898f1c)
  • fix: getting schema in PublicAPI of newly created model (f42be81)
  • chore: added shortid typings (63378b9)
  • refactor: applied codestyle (d8a6f88)
  • refactor: applied markdownlint (ee2c38b)
  • refactor: removed dummy relation, only add in tests (e31e668)

0.13.11 (2018-03-23)

  • fixed regex in recognizing new assets (c6ad916)
  • release version 0.13.11 (e1da441)

0.13.10 (2018-03-22)

  • release version 0.13.10 (7625c90)
  • fix: DMAssetResource import (88decbf)
  • feat: dm-assets in assets getter for EntryResource (614e492)

0.13.9 (2018-03-22)

  • release version 0.13.9 (43be39d)
  • fix: options in createDmAsset must be string (2390de8)

0.13.8 (2018-03-22)

  • release version 0.13.8 (83587df)
  • feat: options in createDmAssets (34a85f6)
  • chore: new package-lock (e64031f)

0.13.7 (2018-03-21)

  • release version 0.13.7 (ddc74f8)
  • fix: travis build, missing --exit mocha option for coverage (40e7db0)

0.13.6 (2018-03-21)

  • release version 0.13.6 (32124fc)
  • fix: destructuring of getUrl response in newHistory (d121bd4)
  • fix: fix single dmAsset requests (62473cc)
  • fix: use 'ec:dm-asset/by-id' for single dmAsset requests (6dbc3a9)
  • fix: use polyfill import of EventSource (7ee763a)
  • chore: add --exit flag to test scripts (e4d22ca)
  • feat: create History from DataManager Source (3f1793e)

0.13.5 (2018-03-12)

  • release version 0.13.5 (4070efe)
  • fix: renamed resource client to dmClients in DataManagerResource (af9bfac)

0.13.4 (2018-03-08)

  • release version 0.13.4 (4331b16)
  • feat: create API key in Accounts Connector (624c1d3)
  • feat: register anonymous in PublicAPI (360eee4)
  • chore: fixed an issue with gitignore files (bed0fdd)
  • chore: new package lock (f3c0352)
  • chore(package): update documentation to version 6.0.0 (9167bc3)
  • chore(package): update sinon-chai to version 3.0.0 (7578c07)
  • chore(package): update webpack to version 4.0.0 (643da38)
  • fix: rename assetGroup > asset into dmAsset (5643373)
  • fix: renamed DataManagerResource accounts relation to dmAccounts SDK-8 (3db5a6e)
  • fix: throw proper error when using invalid model name SDK-18 (5e61fa9)

0.13.3 (2018-03-07)

  • release version 0.13.3 (87561eb)
  • feat: PublicAPI#getDataManagerResource to obtain a DataManagerResource for this PublicAPI (647caa4)

0.13.2 (2018-03-06)

  • release version 0.13.2 (2359424)
  • fix: typo for datamanager export relation (b4ae143)

0.13.1 (2018-03-05)

  • release version 0.13.1 (f22ec8a)
  • fix: adds model config (5faa70b)
  • doc: fixed filter example in DataManagerResource#accountList (5b894f7)

0.13.0 (2018-02-15)

  • release version 0.13.0 (2f05f98)
  • doc: documentation for stand-alone API Connectors :-) (d99acbc)
  • feat: adds _modelTitle to LiteEntryResource (e7f3c77)
  • feat: optimized handling of token store. you can now create API Connectors not sharing their access (ce56ea6)
  • chore: adds vscode settings (4184006)
  • chore: more vscode stuff (b67a630)
  • chore: source maps in mocha tests (4e93565)
  • chore(package): update browserify to version 16.0.0 (be00333)
  • refactor: eslint fixes (7f7fbc1)
  • fix: string typos (a14d962)

BREAKING CHANGE

  • Should not be a breaking change. But better save than sorry. ;-)

Before:

After:

0.12.15 (2018-02-02)

  • release version 0.12.15 (c3d21a6)
  • fix: create relation with additional template param (f888b2e)
  • fix: typo in createRelation of asset groups (b1ac01f)

0.12.14 (2018-02-02)

  • fixed client resource name (b630c6e)
  • fixed datasource and group links (a8b9cc7)
  • release version 0.12.14 (b978a99)
  • fix: getAllPermissions when user has no groups (fa69f80)

0.12.13 (2018-02-02)

  • release version 0.12.13 (9d5381e)
  • chore: package update (22d9a43)
  • fix: added additionalTemplateParam to client and role (c4363a8)

0.12.12 (2018-02-01)

  • release version 0.12.12 (455503d)
  • feat: safePut for EntryResources (c05d060)
  • fix: reset deprecation warning in sinon (bc9577b)

0.12.11 (2018-01-22)

  • release version 0.12.11 (455e535)
  • fix: destructuring of response in upload of AssetsNeue (eb1ae0f)

0.12.10 (2018-01-19)

  • release version 0.12.10 (d057d9a)
  • fix: additional template param handling on undefined options (726ad97)

0.12.9 (2018-01-19)

  • release version 0.12.9 (c7f3d2c)
  • chore: package lock update (30c26dc)
  • chore: package.json updates (139ee21)
  • chore(package): update mocha to version 5.0.0 (50c64cb)
  • doc: another fix in the doc (6634886)
  • doc: fixed typo in doc (d87c3b7)
  • fix: prefilled dataManagerID for DataManagerResource#assetList (cff5c8a)

0.12.8 (2018-01-15)

  • release version 0.12.8 (ecd92a5)
  • feat: also handle accepted answerf (ModelResource#purge) (d4bfca5)

0.12.7 (2018-01-12)

  • release version 0.12.7 (8da7310)
  • fix: additionalTemplateParam for DataManagerResource#resourceList('accounts'); (7cc4410)

0.12.6 (2018-01-12)

  • release version 0.12.6 (b606b03)
  • fix: additional template properties for DataManagerResource#accountList (3bb2d0f)
  • chore(package): update browserify to version 15.0.0 (bd956c3)

0.12.5 (2018-01-12)

0.12.4 (2018-01-04)

  • release version 0.12.4 (a834a40)
  • fix: handle 204 creation on entries and assets neue CMS-3030 (22f4c0c)

0.12.3 (2017-12-21)

  • release version 0.12.3 (eab54b5)
  • refactor: dataManagerID in DataManager API Connector (f585af7)
  • refactor: improved regex for validating query params from template (516ac57)

0.12.2 (2017-12-08)

  • release version 0.12.2 (f4d5ae3)
  • fix: create Entry with EntryResources (call .toOriginal()) CMS-3006 (db7cc75)
  • fix: DataManager#dataManager fix camel case of id CMS-3013 (8158661)
  • fix: use list-buster to create a list in PlatformResource#loadTargets() CMS-3018 (58159b7)
  • test: test for fields vs. unique vs. save bug, cannot reproduce :-( CMS-2994 (292c07b)

0.12.1 (2017-11-30)

  • release version 0.12.1 (debe2d5)
  • fix: enumerable all the things (0edd58b)

0.12.0 (2017-11-30)

  • release version 0.12.0 (e2d1fa3)
  • feat: ListResource#find and ListResource#filter. CMS-3002 (3286415)

0.11.5 (2017-11-28)

  • release version 0.11.5 (55e8509)
  • chore: updated release script so include newest changelog in docs (36636ff)
  • feat: initialize PublicAPI with url similar to old sdk CMS-3009 (0100a72)
  • docs: sort parameter for asset neue relations (5a8d152)

0.11.4 (2017-11-28)

  • release version 0.11.4 (573cd6e)
  • refactor: reworked all resources to use interface/class with defineProperties, should make all nice (0b4187a)

0.11.3 (2017-11-27)

  • release version 0.11.3 (98d8950)
  • fix: remove power-assert warnings from webpack builds (c825822)

0.11.2 (2017-11-21)

  • release version 0.11.2 (c218c62)
  • feat: make list resources stringifyable, adds items property (ad40192)

0.11.1 (2017-11-15)

0.11.0 (2017-11-15)

  • release version 0.11.0 (4bd537b)
  • refactor: only add built sources for npm package, should allow angular production builds (fd1e4f2)
  • fix: typings for bestFile methods in DataManager API Connector (92a9667)

BREAKING CHANGE

  • import for typescript projects changed from src to lib.

before:

after:

0.10.2 (2017-11-15)

  • release version 0.10.2 (3633aea)
  • fix: dirty detection did not handle complex types (edf3155)
  • fix: throw error when filterOptions are not an object (f452c3e)
  • tests: tests for filterOptions not an object, response not a json (957abe4)
  • refactor: reduce duplicate code in helper (cf5d4f2)

0.10.1 (2017-11-10)

  • release version 0.10.1 (61fd0f4)
  • feat: handle weird responses which are not a json (33567eb)

0.10.0 (2017-11-09)

  • release version 0.10.0 (cd724b9)
  • fix: handle prefilled dataManagerID on assetGroup relations CMS-2986 (cc343ac)
  • chore: package-lock update (1249ca0)
  • chore: untrack .idea (f7be172)
  • chore: update gitignore (ee95b09)
  • chore: updated idea config (dd7051e)
  • test: dmAssetCreate tests (b55c88a)
  • test: removed dangling comma node 6 doesn’t like (e47fdd8)
  • feat: adds AssetGroup resources and DMAsset resources (aka asset-neue) (6606d43)
  • feat: best file helper in PublicAPI support for assetsNeue (2be785c)
  • feat: createDMAsset returns DMAssetList directly (2385356)
  • feat: createDMAssets, dmAsset and dmAssetList in PublicAPI (543c8da)
  • feat: DMAssetResource and AssetGroupResource CMS-2971 CMS-2972 (292f74c)
  • feat: file helper for DMAssetResource (1e804ce)

0.9.1 (2017-10-30)

0.9.0 (2017-10-12)

  • release version 0.9.0 (1f55373)
  • tests: add various tests (5789c22)
  • tests: missing tests for generic resource functions (f8b0b0b)
  • feat: add warning when token could not be saven into cookie (911c474)
  • feat: change email in PublicAPI (335b4e7)
  • feat: create model in DataManagerResource CMS-2969 (c832547)
  • feat: generic resource/list resource for Resources COM-77 (3db40c0)
  • feat: generic resourceList() and resource() methods for API Connectors (7d9a173)
  • feat: removed hardcoded urls in asset best file CMS-2942 (2d9e5bb)
  • feat: request cache for permission checks (87a76e7)
  • feat: start sync in model resource CMS-2967 (7e4a309)
  • feat: throw on list requests with _levels parameter CMS-2963 (2e23d21)
  • feat: validate functions for Resource and EntryResource(fields) CMS-2908 (d481b4a)
  • chore: removed unused files (d7e14d1)
  • chore: updated package.json with json-schema-remote 1.3.1 (fa474d9)
  • chore(package): update coveralls to version 3.0.0 (a069fa2)
  • chore(package): update mocha to version 4.0.0 (0d13d76)
  • chore(package): update sinon to version 4.0.0 (28c2035)
  • fix: adds string to typings for AssetList#download return type (5229bf6)
  • fix: removed the hack for filter/filterOptions doc, found better solution (44b6433)
  • fix: resource not marked as dirty when set CMS-2938 (c5ef0d7)
  • fix: wrong path for helper import (d81a5ff)
  • doc: use a hack to add filter/filterOptions to docs (db0eb1a)
  • test: fix typo in tests (8131fb4)

0.8.9 (2017-09-11)

  • docs: hide private createEntry and createList in docs (88597d3)
  • release version 0.8.9 (8a0be83)
  • fix: adds typing for packageJson in helper.ts (b6a4f39)

0.8.8 (2017-09-11)

  • release version 0.8.8 (5067bef)
  • fix: define properties even if they are "missing" in EntryResource (8947b00)

0.8.7 (2017-09-09)

  • add caret to dependecy, update some, tested doc build (a59ee77)
  • release version 0.8.7 (f4731af)
  • fix: fixed JSON.stringify of resource (6d24b5e)
  • fix: ListResource with enumerable properties and ts interface (82b449c)
  • fix: Public Resources with enumerable properties and ts interface (cb3b1c9)
  • fix: reworked promise chain in Resource#save (8348185)
  • refactor: AccountResource enumerable properties with ts interface (9da0608)
  • chore: updated idea config (14851bb)
  • chore(package): update documentation to version 5.3.1 (8cf49eb)
  • doc: fix filter object in PublicAPI example (1788a73)

0.8.6 (2017-09-08)

  • release version 0.8.6 (4557528)
  • fix: cookieModifier handling of undefined values (13c513d)

0.8.5 (2017-09-06)

0.8.4 (2017-09-06)

  • release version 0.8.4 (09aecc4)
  • doc: fixed wrong example in doc CMS-2921 (cba26f4)
  • doc: rearranged methods for proper sorting in doc (5f8234c)
  • doc: reworked doc introduction and API connectors CMS-2923 (9493512)
  • feat: getOriginal() for [Public]AssetResources (3aeb51b)

0.8.3 (2017-09-04)

  • release version 0.8.3 (4258ea0)
  • chore: release script back to working version (675d1a8)
  • feat: DataManagerResource#getPublicAPI() for creating a PublicAPI from Data Manager CMS-2933 (62df352)

0.8.2 (2017-09-04)

  • chore: dot reporter for tests (66b552c)
  • chore: package patches, new package-lock (b9b58b1)
  • chore(package): update documentation to version 5.3.0 (ce7d408)
  • fix: changelog mix up (1894f89)
  • fix: main file fix, browser build fix (c31adf6)
  • fix: manually create index.js to match index.js in root dir (1a49999)
  • fix: typings fix for event listeners (d1e6744)
  • refactor: getter setter instead of Object.defineProperty for API Connectors an PublicAPI CMS-2932 (74b6df2)
  • refactor: moved index into root directory (5df4f1e)
  • refactor: switch to proper getter/setter CMS-2932 (ca04bc0)

0.8.1 (2017-09-01)

  • refactor: do not export Symbols use Symbol.for(…) (aef1353)
  • refactor: environment type belongs to Core not ListResource (a502a1d)
  • refactor: PublicAssetResource#resolve to Resource#resolve CMS-2927 (25154bb)
  • refactor: use this.getLinks and similar instead of this[resourceSymbol].links etc. (fbd014a)
  • feat: ListResources are now iterable CMS-2929 (6f1e0d7)
  • chore: updated release script for improved conventional changelog version (45eed87)
  • release version 0.8.0 (b72fb46)

0.8.0 (2017-09-01)

  • refactor: major refactor. switched sources to typescript to get rid of extra typings files. (cfc9a4e)
  • release version 0.7.1 (91387e4)
  • fix: count properties when PublicAssetResource is resolved (3e5496e)
  • fix: getter/setter for linked types must handle missing links/embeds CMS-2924 (9634ec1)
  • revert: chore: documentation alphabetically CMS-2922 (ff2154c)
  • chore: changelog fix for breaking change (527c7d8)
  • chore: documentation alphabetically CMS-2922 (14d29cd)

BREAKING CHANGE

  • All import statements will change with this update. Also note that some bug were fixed during the refactor. Those also include some typos in function names, but only of functions I'm certain nobody is using. :-D

Before:

After:

0.7.1 (2017-08-29)

  • release version 0.7.1 (91387e4)
  • fix: count properties when PublicAssetResource is resolved (3e5496e)
  • fix: getter/setter for linked types must handle missing links/embeds CMS-2924 (9634ec1)
  • revert: chore: documentation alphabetically CMS-2922 (ff2154c)
  • chore: changelog fix for breaking change (527c7d8)
  • chore: documentation alphabetically CMS-2922 (14d29cd)

0.7.0 (2017-08-29)

  • feat: allow createEntry with direct loading of nested elements CMS-2905 (b7e0cd6)
  • feat: "Lite" PublicAssetResource for better handling of entries. Used for ec-form. (88a3639)
  • feat: LiteEntryResource for better handling of entry title. Used for ec-form. CMS-2 (ec21a79)
  • release version 0.7.0 (7d842ac)
  • refactor: manually set isResolved flag for PublicAssetResource (b8ed06e)
  • fix: another fix for those createAsset(s) typings 😀 (18d00da)
  • fix: FormData in createAsset(s) has set function, not field (64794a7)
  • fix: input type for createAssets (ee07643)
  • fix: options are optional on createAsset(s) (e8a8569)
  • fix: token handling for superagent helper as well CMS-2916 (1933169)
  • fix: typings for PublicAPI#createAsset(s) (9c5e7fc)

BREAKING CHANGE:

  • feat: "Lite" PublicAssetResource for better handling of entries. Used for ec-form.

    Since version 0.7.0 the ec.sdk supports "Lite" PublicAssetResources. Those are used to better support EntryResources in ec-forms. They are a stripped down versions of PublicAssetResources containing everything but tags. The reason to add this was better support of title handling for linked entries.

    Migration is straight forward, just add .assetID on all linked entry types when you don't use nested assets.

    Before:

    After:

  • feat: LiteEntryResource for better handling of entry title. Used for ec-form.

    Since version 0.7.0 the ec.sdk supports LiteEntryResources. Those are used to better support EntryResources in ec-forms. They are a stripped down versions of EntryResources only containing id, _id, _entryTitle, and getModelTitle(). The reason to add this was better support of title handling for linked entries.

    Migration is straight forward, just add .id on all linked entry types when you don't use nested entries.

    Before:

    After:

0.6.13 (2017-08-25)

  • release version 0.6.13 (393d5fa)
  • fix: null value handling in EntryResource CMS-2909, CMS-2910 (7cc4986)
  • fix: token handling for publicAPIs with logged in ecUser (via Session) CMS-2916 (514d4f0)

0.6.12 (2017-08-24)

  • release version 0.6.12 (63ed1a8)
  • feat: _entryTitle field in EntryResource CMS-2911 (8c4384d)
  • chore: updated package-lock (42c43a9)
  • chore(package): update documentation to version 5.2.2 (7cd070a)

0.6.11 (2017-08-22)

  • release version 0.6.11 (8c374e8)
  • chore: add package-lock.json to release script (58957a2)
  • chore: adds package lock (d0ae0c1)
  • chore: no Babel file watcher pls (f97bc29)
  • chore(package): update documentation to version 5.2.0 (76b5564)
  • chore(package): update documentation to version 5.2.1 (2f16540)
  • feat: EntryResource#getTitle() now for entry and nested elements CMS-2901 (7b572fd)
  • feat: PublicResource#getLevelCount for returning # of levels CMS-2900 (485fd28)
  • fix: getAllItems on PublicAssetList broken CMS-2907 (9ab3a21)
  • fix: getter for date time fields returned 1.1.1970 for null dates (01f4071)
  • fix: typings fixes for public assets CMS-2906 (65f59bd)

0.6.10 (2017-08-09)

  • release version 0.6.10 (6673a9f)
  • feat: template parameter on PublicAPI#getAuthLink (0ec07c8)

0.6.9 (2017-08-09)

  • release version 0.6.9 (9f44937)
  • feat: PublicAPI#getAuthLink for auth link retrieval (3625690)

0.6.8 (2017-08-08)

  • release version 0.6.8 (582af4f)
  • feat: resources with additional properties will throw on save CMS-2883 (bce4557)
  • fix: more types allowed on filter CMS-2882 (8013ec8)
  • chore(package): update documentation to version 5.1.1 (c390e54)

0.6.7 (2017-08-04)

  • release version 0.6.7 (331a0fc)
  • chore: require json-schema-remote 1.2.2, will remove warnings from webpack (9678e62)
  • chore(package): update documentation to version 5.1.0 (d5d1d28), closes #2
  • chore(package): update sinon to version 3.0.0 (9c19924)
  • fix: PublicAPI#createEntry follow link (5f1d983)
  • doc: fixed typo in doc (1562f34)

0.6.6 (2017-07-21)

  • release version 0.6.6 (35a01c2)
  • chore: adds new npm auth token, hopefully fix deployment builds (807b7bc)

0.6.5 (2017-07-21)

  • release version 0.6.5 (27c544c)
  • fix: typo in typings (84606c3)
  • test: fixed all broken assertions (d14673e)
  • docs: reordered badges (9159f4a)
  • docs(readme): add Greenkeeper badge (c8033ec)
  • chore(package): update dependencies (518d29b)

0.6.4 (2017-07-20)

  • release version 0.6.4 (0f92878)
  • feat: sanity checks for filter options CMS-2820 (e4287e6)
  • doc: add new docs build (5912036)
  • doc: fixed some doc issues (3b4066c)
  • doc: fixed some doc issues (fb84f5b)
  • chore: new path to node and eslint, editor config (a9ac9fa)

0.6.3 (2017-07-18)

  • release version 0.6.3 (03feb29)
  • fix: another fix for Problem detection in superagent helper (c399c48)
  • fix: schema handling for EntryResource#save() CMS-2844 (1f9ce99)
  • chore: new editor config (2caf81c)

0.6.2 (2017-07-12)

  • release version 0.6.2 (9bd2ac2)
  • fix: asset helper in publicAPI url templating (c657329)
  • fix: response handling of superagentGet responses (41a68e2)
  • fix: undefined locale header in file api of publicAPI (6597b83)

0.6.1 (2017-07-10)

  • release version 0.6.1 (86983ec)
  • feat: handle null values on entries/assets fields (4b984e1)
  • chore: add node 8 to travis config (9533d9a)

0.6.0 (2017-07-06)

  • release version 0.6.0 (d730046)
  • feat: getToken support (d1f33ba)
  • feat: tokens separated by Data Manager CMS-2828 (ad920af)
  • refactor: more resilient filterOptions typings (293557d)

0.5.7 (2017-07-06)

  • release version 0.5.7 (97d8c7d)
  • feat: checkPermission with force refresh MYC-628 (9e7b052)

0.5.6 (2017-07-04)

  • release version 0.5.6 (779c54b)
  • fix: nestedEntry support for null values (a4c7544)

0.5.5 (2017-06-29)

  • release version 0.5.5 (95e2ba4)
  • feat: Resource#allLinks added (ba62f8a)
  • feat: Resource#getLinks for all link objects of a given key (4c804d5)
  • feat: shortID property for PublicAPI (560af28)
  • fix: add stream dependency so projects with angular cli work (0526b4d)
  • fix: more resilient detection of traversons continue in Resource (5dda38e)
  • fix: typings in PublicAPI invite property optional in signup (54cf9b8)

0.5.4 (2017-06-21)

  • release version 0.5.4 (2a1f4e3)
  • fix: parsing of already parsed resources (86a1d35)

0.5.3 (2017-06-21)

  • release version 0.5.3 (6044b03)
  • fix: creation of EntryList parameter order wrong (39e0b15)
  • fix: detection of Promblem in superagent helper CMS-2813 (7dfa398)
  • feat: only available properties in EntryResource CMS-2817 (c1b0959)

0.5.2 (2017-06-14)

  • release version 0.5.2 (f5828b1)
  • chore: no git hooks in release script (4285ddf)
  • fix: handling of _fields property in filter (b6df5b6)

0.5.1 (2017-06-14)

  • release version 0.5.1 (05785c3)
  • feat: _fields filter for PublicAPI entry and entry list CMS-2816 (3093fd7)
  • feat: export environment type in typings (fe2c15c)
  • feat: preloadSchemas CMS-2815 (0be491f)
  • doc: fixes typo in docs (b2a86c4)

0.5.0 (2017-06-06)

  • release version 0.5.0 (e9c9f2c)
  • doc: add doc for ListResource.map() (6734424)
  • doc: adds missing doc (8822b2a)
  • doc: adds sort order for Apps documentation (90a141a)
  • doc: extends example in readme (a85119b)
  • doc: updated readme with webpack.config part (0082c97)
  • fix: a lot typing fixes (fb169a6)
  • fix: fixed typings and small other things CMS-2801 (eeaecbe)
  • fix: support next, prev, first links for EntryList correctly (158a8e7)
  • feat: add convenience relations CMS-2800 (ede6d8b)
  • feat: AppResource, AppList, basic Apps API Connector CMS-2567 (b113fac)
  • feat: AppStatsList and AppStatsResource CMS-2573 (2cab8ef)
  • feat: build resource CMS-2571 (928f78f)
  • feat: convenient functions in TypesResource (65c76ac)
  • feat: create platform CMS-2797 (0c5301c)
  • feat: deployment resource CMS-2572 (a05e9dd)
  • feat: getter/setter for platform plugins CMS-2802 (b8d6989)
  • feat: list.map function in ListResource CMS-2609 (f131469)
  • feat: PlatformList, PlatformResource CMS-2569 (6d15d09)
  • feat: plugin create CMS-2570 (12cde86)
  • feat: plugin resources CMS-2570 (12c8d6e)
  • feat: public assets nested in entries CMS-2794 (35ff58f)
  • feat: TypesResource CMS-2568 (4599d77)
  • feat: typings for ListResource#map() CMS-2609 (237dcd9)
  • refactor: removed duplicate tests of cliendID (3cf2fa5)

0.4.0 (2017-05-19)

  • release version 0.4.0 (5f76e86)
  • test: fixed tests, added more (1a03a34)
  • feat: add validation of dm-clients on create (f2e9cf7)
  • feat: any, all filter of id fields in lists allowed CMS-2790 (cb1080c)
  • feat: API connector for public api CMS-2763 (7cd2080)
  • feat: asset file helper in EntryResource CMS-2782 (e1692a2)
  • feat: create anonymous in public api CMS-2767 (e39e1f3)
  • feat: do not block login on old token (122d096)
  • feat: email available check public api CMS-2768 (ac60bd3)
  • feat: entry list class CMS-2765 (aee1ab8)
  • feat: entry, entryList, createEntry in PublicAPICMS-2765 (0ef9676)
  • feat: load “me” in public api CMS-2771 (2324252)
  • feat: nested entries CMS-2778 (9a55b7b)
  • feat: public api user signup CMS-2769 (0f30b6d)
  • feat: public assts/tags CMS-2773, CMS-2774 (6269bbd)
  • feat: public global asset helper CMS-2772 (4ad6496)
  • feat: public model, getSchema CMS-2764 (5701f88)
  • feat: public permissions check CMS-2777 (edeb716)
  • feat: reset password public api CMS-2770 (ac5a465)
  • feat: signin/signout in public api CMS-2762 (0bfc93a)
  • feat: simple EntryResource CMS-2766 (578c6d6)
  • feat: support for _levels parameter in options CMS-2765 (b71d467)
  • feat: typings for CMS-2767 (f5ff0b7)
  • feat: typings for CMS-2768 CMS-2769 CMS-2770 (1907fcc)
  • feat: typings update for entry related functions (ca847a1)
  • fix: detection of single resource query in public api (a077ed5)
  • fix: handling of single item get in public api (87e72ee)
  • fix: reloading of root response CMS-2779 (4c17ba1)
  • fix: test fix for CMS-2779 (15c9f29)
  • refactor: do not use getAllItems on getItem(n) for better performance (55f30ea)
  • refactor: renamed create functions for Entry classes (aa8423f)
  • refactor: use Symbols for private properties CMS-2781 (59d21d6)
  • docs: updated documentation order (4d3dd22)
  • docs: updated EntryResource doc (2918aa6)
  • chore: build before coverage tasks (f893a15)
  • chore: fixed typo in changelog (c86672e)

0.3.0 (2017-05-03)

  • release version 0.3.0 (c6a1b59)
  • feat: add default user agent and Core#setUserAgent for cusstom one CMS-2628 (8c8ddd8)
  • feat: add missing filter checks CMS-2707 (ac8e247)
  • feat: asset file helper CMS-2705 (82967a7)
  • feat: assets resource (CMS-2564) and deleted assets resource (CMS-2703) (63911e5)
  • feat: best file in DataManager CMS-2706 (df1073c)
  • feat: best file negotiation in delted assets (b36daaf)
  • feat: check permissions in Session and AccountResource (bf5fc89)
  • feat: client schema validation on create CMS-2751 (3326061)
  • feat: create Asset CMS-2704 (5096224)
  • feat: create dm from template dataSchema validation (b5cdf8b)
  • feat: create dm-client CMS-2558 (ff1496a)
  • feat: create multiple assets CMS-2719 (82637b8)
  • feat: create/update DataManager from Template CMS-2732 (fd05bec)
  • feat: dm-account resource CMS-2560 (73ffcc9)
  • feat: dm-client resource CMS-2562 (f081af5)
  • feat: DMStatsResource CMS-2566 (d395fab)
  • feat: download option for assets CMS-2728 (861f139)
  • feat: export datamanager CMS-2730 (75df67f)
  • feat: group create with validation CMS-2750 (50a7953)
  • feat: purge/restore deleted asset CMS-2729 (de47cd7)
  • feat: resolve dm-templates (ed4dbcb)
  • feat: Role resource CMS-2561 (55561e9)
  • feat: root response cache in Core CMS-2742 (fcd9a31)
  • feat: schema validation prior to put CMS-2595 (1082d64)
  • feat: TagResource CMS-2565 (b393f4e)
  • feat: TemplateResource CMS-2563 (2185c56)
  • feat: typings for asset best file (e612f51)
  • feat: typings for dm-clients CMS-2562 (f5bd2d9)
  • feat: validation create template CMS-2753 (b946774)
  • feat: validation in create actions CMS-2743 (573902e)
  • feat: validation of create role CMS-2752 (4f739a2)
  • feat: validity check for filter CMS-2707 (3b3429e)
  • fix: embedded name in RoleList (36e5f8a)
  • fix: fixed a really bad typo (a436cb5)
  • fix: global transform for babelify (855d660)
  • fix: return types in DataManager.d.ts (2df8fa7)
  • fix: some typings fixes (a426f3f)
  • fix: wrong relation for DataManagerResource#stats (06f6dd2)
  • refactor: changelog old breaking change documented (90ba228)
  • refactor: reworked filter options (57a526c)
  • refactor: split resources into packages (d9ab53e)
  • refactor: User-Agent now X-User-Agent (b25e934)
  • chore: add webpack test build (b27694b)
  • chore: coverage recursive (1c0839a)
  • chore: dependency update (11c3b65)
  • chore: dependency updates (49dc02e)
  • chore: json-schema-remote develop with tv4-format fork (7530bbd)
  • chore: json-schema-remote version bump (99e6967)
  • chore: json-schema-remote with fixed tv4-formats (a36d1ba)
  • chore: renamed dm account testfile (9c3df88)
  • chore: some formatting :) (9230b65)
  • doc: asset best file doc (5bbd870)
  • doc: document missing types CMS-2731 (6293a3b)
  • doc: fixed some wrong examples in docs (e4345de)
  • doc: more doc for filter options CMS-2727 (09ee4b1)
  • doc: properties in RoleResource (1753a1a)
  • tests: for superagentPost helper (dae79f3)
  • test: add newRequest() test with continue() (4afe047)
  • test: test for rejectWith proper error message (