GitHub Markdown API

The GitHub Markdown API is a REST service that converts Markdownespecially GitHub Flavored Markdowninto the same HTML GitHub renders in READMEs, issues, and pull requests, so external apps can display content consistently with GitHub.

Operations 2

POST /markdown GitHub Render a Markdown Document #
POST /markdown/raw GitHub Render a Markdown Document in Raw Mode #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/github-markdown-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

github-markdown-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.1.4
  title: GitHub v3 REST Markdown API
  description: GitHub's v3 REST API.
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT
  termsOfService: https://docs.github.com/articles/github-terms-of-service
  contact:
    name: Support
    url: https://support.github.com/contact?tags=dotcom-rest-api
  x-github-plan: ghes
  x-github-release: 3.9
servers:
- url: '{protocol}://{hostname}/api/v3'
  variables:
    hostname:
      description: Self-hosted Enterprise Server hostname
      default: HOSTNAME
    protocol:
      description: Self-hosted Enterprise Server protocol
      default: http
tags:
- name: Markdown
  description: Render GitHub flavored markdown
paths:
  /markdown:
    post:
      summary: GitHub Render a Markdown Document
      description: ''
      operationId: markdown/render
      tags:
      - Markdown
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/markdown/markdown#render-a-markdown-document
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              properties:
                text:
                  description: The Markdown text to render in HTML.
                  type: string
                mode:
                  description: The rendering mode.
                  enum:
                  - markdown
                  - gfm
                  default: markdown
                  example: markdown
                  type: string
                context:
                  description: The repository context to use when creating references in `gfm` mode.  For example, setting `context` to `octo-org/octo-repo` will change the text `#42` into an HTML link to issue 42 in the `octo-org/octo-repo` repository.
                  type: string
              required:
              - text
              type: object
            examples:
              default:
                summary: Rendering markdown
                value:
                  text: Hello **world**
      responses:
        '200':
          description: Response
          headers:
            Content-Type:
              $ref: '#/components/headers/content-type'
            Content-Length:
              example: '279'
              schema:
                type: string
            X-CommonMarker-Version:
              $ref: '#/components/headers/x-common-marker-version'
          content:
            text/html:
              schema:
                type: string
              examples:
                default:
                  summary: Example response
                  value: <p>Hello <strong>world</strong></p>
        '304':
          $ref: '#/components/responses/not_modified'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: markdown
        subcategory: markdown
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /markdown/raw:
    post:
      summary: GitHub Render a Markdown Document in Raw Mode
      description: You must send Markdown as plain text (using a `Content-Type` header of `text/plain` or `text/x-markdown`) to this endpoint, rather than using JSON format. In raw mode, [GitHub Flavored Markdown](https://github.github.com/gfm/) is not supported and Markdown will be rendered in plain format like a README.md file. Markdown content must be 400 KB or less.
      operationId: markdown/render-raw
      tags:
      - Markdown
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/markdown/markdown#render-a-markdown-document-in-raw-mode
      parameters: []
      requestBody:
        required: false
        content:
          text/plain:
            schema:
              type: string
            examples:
              default:
                value:
                  text: Hello **world**
          text/x-markdown:
            schema:
              type: string
            examples:
              default:
                summary: Rendering markdown
                value:
                  text: Hello **world**
      responses:
        '200':
          description: Response
          headers:
            X-CommonMarker-Version:
              $ref: '#/components/headers/x-common-marker-version'
          content:
            text/html:
              schema:
                type: string
              examples:
                default:
                  summary: Example response
                  value: <p>Hello <strong>world</strong></p>
        '304':
          $ref: '#/components/responses/not_modified'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: markdown
        subcategory: markdown
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  headers:
    x-common-marker-version:
      example: 0.17.4
      schema:
        type: string
    content-type:
      example: text/html
      schema:
        type: string
  responses:
    not_modified:
      description: Not modified
externalDocs:
  description: GitHub Enterprise Developer Docs
  url: https://docs.github.com/enterprise-server@3.9/rest/