docs: function create(uri, data, locals) {
    const layoutReference = data && data.layout,
      pageData = data && references.omitPageConfiguration(data),
      prefix = getPrefix(uri),
      pageReference = `${prefix}/_pages/${uid.get()}`,
      user = locals && locals.user;
  
    if (!layoutReference || !isLayout(layoutReference)) {
      throw new Error('Client: Data missing layout reference.');
    }
  
    return layouts.get(layoutReference, locals) // check to make sure the layout 200's
      .then(() => {
        return getPageClonePutOperations(pageData, locals)
          .then(ops => {
            pageData.layout = layoutReference;
            return addOp(pageReference, pageData, ops);
          });
      })
      .then(applyBatch)
      .then(newPage => {
        newPage._ref = pageReference;
  
        return meta.createPage(newPage._ref, user)
          .then(() => {
            bus.publish('createPage', { uri: pageReference, data: newPage, user });
  
            return newPage;
          });
      });
  }