
Product
Introducing Repository Access Permissions and Custom Roles
Socket now supports Custom Roles and Repository Access Permissions so organizations can control who can access specific repositories and actions.
ghost-admin-api-schema
Advanced tools
The package serves as a single source of truth when validating requests coming into Ghost's Admin API endpoints. It uses [JSON Schema](https://json-schema.org/) definitions under the hood to describe expected format of validated data.
The package serves as a single source of truth when validating requests coming into Ghost's Admin API endpoints. It uses JSON Schema definitions under the hood to describe expected format of validated data.
npm install @tryghost/admin-api-schema --save
or
yarn add @tryghost/admin-api-schema
const jsonSchema = require('@tryghost/admin-api-schema');
// check available schemas
jsonSchema.list()
/*
> [
'images-upload', 'labels-add',
'labels-edit', 'members-add',
'members-edit', 'members-upload',
'pages-add', 'pages-edit',
'posts-add', 'posts-edit',
'tags-add', 'tags-edit',
'webhooks-add', 'webhooks-edit'
]
*/
// get schema definition
jsonSchema.get('tags-edit');
/*
> {
'$schema': 'http://json-schema.org/draft-07/schema#',
'$id': 'tags.edit',
title: 'tags.edit',
description: 'Schema for tags.edit',
type: 'object',
additionalProperties: false,
properties: {
tags: { type: 'array', minItems: 1, maxItems: 1, items: [Object] }
},
required: [ 'tags' ]
}
*/
// validate data
const data = {
posts: [{
title: 'valid'
}]
};
try {
await apiSchema.validate({data, schema: 'posts-add'});
} catch (err) {
console.log('validateion error:', err);
}
When used from Ghost core in validation layer:
const jsonSchema = require('@tryghost/admin-api-schema');
const validate = async (apiConfig, frame) => await jsonSchema.validate({
data: frame.data,
schema: `${apiConfig.docName}-${apiConfig.method}`
});
This is a mono repository, managed with lerna.
Follow the instructions for the top-level repo.
git clone this repo & cd into it as usualyarn to install top-level dependencies.yarn devyarn lint run just eslintyarn test run lint and testsCopyright (c) 2013-2023 Ghost Foundation - Released under the MIT license.
FAQs
The package serves as a single source of truth when validating requests coming into Ghost's Admin API endpoints. It uses [JSON Schema](https://json-schema.org/) definitions under the hood to describe expected format of validated data.
We found that ghost-admin-api-schema demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket now supports Custom Roles and Repository Access Permissions so organizations can control who can access specific repositories and actions.

Product
Socket MCP now lets AI assistants review org alerts, investigate threats using the Socket threat feed, and inspect package files in addition to dependency scoring.

Product
Socket Firewall blocks malicious VS Code and Open VSX extensions before install, protecting developers from compromised editor marketplaces.