{ "opencollection": "1.0.0", "info": { "name": "Ghost Admin Authors Posts API", "version": "5.0" }, "request": { "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "items": [ { "info": { "name": "Posts", "type": "folder" }, "items": [ { "info": { "name": "Browse posts", "type": "http" }, "http": { "method": "GET", "url": "https://{site}.ghost.io/ghost/api/admin/posts/", "params": [ { "name": "include", "value": "", "type": "query", "description": "Comma-separated list of related resources to include. Supported values are authors and tags." }, { "name": "fields", "value": "", "type": "query", "description": "Comma-separated list of fields to return in the response." }, { "name": "filter", "value": "", "type": "query", "description": "Apply fine-grained filters using Ghost's NQL query language." }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of resources to return per page. Defaults to 15." }, { "name": "page", "value": "", "type": "query", "description": "Page number for paginated results. Defaults to 1." }, { "name": "order", "value": "", "type": "query", "description": "Field and direction to order results by." }, { "name": "formats", "value": "", "type": "query", "description": "Comma-separated list of content formats to include in the response." } ] }, "docs": "Retrieve a paginated list of posts with all statuses including draft, scheduled, and published. Supports filtering, ordering, and including related resources." }, { "info": { "name": "Create a post", "type": "http" }, "http": { "method": "POST", "url": "https://{site}.ghost.io/ghost/api/admin/posts/", "body": { "type": "json", "data": "{}" } }, "docs": "Create a new post. The title field is required, all other fields are optional and will have defaults applied. Content can be provided in Lexical or HTML format. Tags can be specified by name or as full tag objects. If a tag does not exist, it will be created automatically." }, { "info": { "name": "Read a post by ID", "type": "http" }, "http": { "method": "GET", "url": "https://{site}.ghost.io/ghost/api/admin/posts/:id/", "params": [ { "name": "id", "value": "", "type": "path", "description": "The unique identifier of the resource" }, { "name": "include", "value": "", "type": "query", "description": "Comma-separated list of related resources to include. Supported values are authors and tags." }, { "name": "fields", "value": "", "type": "query", "description": "Comma-separated list of fields to return in the response." }, { "name": "formats", "value": "", "type": "query", "description": "Comma-separated list of content formats to include in the response." } ] }, "docs": "Retrieve a single post by its unique identifier, including draft and scheduled posts." }, { "info": { "name": "Update a post", "type": "http" }, "http": { "method": "PUT", "url": "https://{site}.ghost.io/ghost/api/admin/posts/:id/", "params": [ { "name": "id", "value": "", "type": "path", "description": "The unique identifier of the resource" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Update an existing post. The updated_at field must be sent with the current value to prevent update collisions. Only the fields being changed need to be included in the request body, along with updated_at." }, { "info": { "name": "Delete a post", "type": "http" }, "http": { "method": "DELETE", "url": "https://{site}.ghost.io/ghost/api/admin/posts/:id/", "params": [ { "name": "id", "value": "", "type": "path", "description": "The unique identifier of the resource" } ] }, "docs": "Permanently delete a post by its unique identifier." }, { "info": { "name": "Read a post by slug", "type": "http" }, "http": { "method": "GET", "url": "https://{site}.ghost.io/ghost/api/admin/posts/slug/:slug/", "params": [ { "name": "slug", "value": "", "type": "path", "description": "The URL slug of the resource" }, { "name": "include", "value": "", "type": "query", "description": "Comma-separated list of related resources to include. Supported values are authors and tags." }, { "name": "fields", "value": "", "type": "query", "description": "Comma-separated list of fields to return in the response. Use this to limit the size of the response by only requesting the fields you need." }, { "name": "formats", "value": "", "type": "query", "description": "Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext to also include plaintext." } ] }, "docs": "Retrieve a single published post by its URL slug. This is useful when you know the post's URL but not its ID." } ] } ], "bundled": true }