sketchxflow-com Marketplace API

The marketplace API from sketchxflow-com — 22 operation(s) for marketplace.

Operations 25

GET /api/marketplace/categories Categories #
GET /api/marketplace/templates List Templates #
GET /api/marketplace/templates/{slug} Get Template #
GET /api/marketplace/covers/{slug} Template Cover #
GET /api/marketplace/templates/{slug}/preview Preview Entry #
GET /api/marketplace/templates/{slug}/preview/{page} Preview Page #
GET /api/marketplace/assets/{template_id}/{path} Template Asset #
GET /api/marketplace/me Marketplace Me #
PUT /api/marketplace/me/start Set Marketplace Start #
GET /api/marketplace/purchases My Purchases #
POST /api/marketplace/templates/{slug}/purchase Purchase Template #
GET /api/marketplace/studio/templates Studio Templates #
POST /api/marketplace/studio/templates Studio Create #
GET /api/marketplace/studio/stats Studio Stats #
GET /api/marketplace/studio/source-projects Studio Source Projects #
GET /api/marketplace/studio/starter Studio Starter #
POST /api/marketplace/studio/templates/upload Studio Upload Zip #
GET /api/marketplace/studio/templates/{template_id} Studio Get #
PUT /api/marketplace/studio/templates/{template_id} Studio Update #
DELETE /api/marketplace/studio/templates/{template_id} Studio Delete #
POST /api/marketplace/studio/templates/{template_id}/resnapshot Studio Resnapshot #
POST /api/marketplace/studio/templates/{template_id}/refresh-cover Studio Refresh Cover #
POST /api/marketplace/studio/templates/{template_id}/publish Studio Publish #
POST /api/marketplace/studio/templates/{template_id}/unpublish Studio Unpublish #
POST /api/marketplace/studio/templates/{template_id}/archive Studio Archive #

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/sketchxflow-com:sketchxflow-com-marketplace-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

sketchxflow-com-marketplace-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: SketchXFlow Marketplace API
  version: 0.1.0
tags:
- name: Marketplace
paths:
  /api/marketplace/categories:
    get:
      tags:
      - Marketplace
      summary: Categories
      operationId: categories_api_marketplace_categories_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/templates:
    get:
      tags:
      - Marketplace
      summary: List Templates
      operationId: list_templates_api_marketplace_templates_get
      parameters:
      - name: q
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Q
      - name: category
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Category
      - name: platform
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Platform
      - name: sort
        in: query
        required: false
        schema:
          type: string
          default: featured
          title: Sort
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 24
          title: Limit
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
          title: Offset
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/templates/{slug}:
    get:
      tags:
      - Marketplace
      summary: Get Template
      operationId: get_template_api_marketplace_templates__slug__get
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/covers/{slug}:
    get:
      tags:
      - Marketplace
      summary: Template Cover
      description: 'A published template''s poster cover (services/project_cover): a 302 to

        the stored image, made on first ask. 404 when it can''t be made — the card

        then draws its own fallback from `cover_url`.'
      operationId: template_cover_api_marketplace_covers__slug__get
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/templates/{slug}/preview:
    get:
      tags:
      - Marketplace
      summary: Preview Entry
      operationId: preview_entry_api_marketplace_templates__slug__preview_get
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/templates/{slug}/preview/{page}:
    get:
      tags:
      - Marketplace
      summary: Preview Page
      description: 'One page of the template snapshot. Relative nav links in the generated

        HTML resolve to sibling pages under the same path, like the community

        gallery''s viewer.'
      operationId: preview_page_api_marketplace_templates__slug__preview__page__get
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      - name: page
        in: path
        required: true
        schema:
          type: string
          title: Page
      responses:
        '200':
          description: Successful Response
          content:
            text/html:
              schema:
                type: string
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/assets/{template_id}/{path}:
    get:
      tags:
      - Marketplace
      summary: Template Asset
      description: 'One image, font or oversized script from an imported template.


        Public and unauthenticated on purpose: these are referenced by and

        url() inside preview pages, and by the copy a buyer already owns. Not

        gated on the template being published either — unpublishing a template

        must not break the pages of everyone who bought it.'
      operationId: template_asset_api_marketplace_assets__template_id___path__get
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      - name: path
        in: path
        required: true
        schema:
          type: string
          title: Path
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/me:
    get:
      tags:
      - Marketplace
      summary: Marketplace Me
      operationId: marketplace_me_api_marketplace_me_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/me/start:
    put:
      tags:
      - Marketplace
      summary: Set Marketplace Start
      description: 'Save where this publisher''s marketplace sign-in opens, or clear it

        (null) to be asked again.'
      operationId: set_marketplace_start_api_marketplace_me_start_put
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MarketplaceStartBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/purchases:
    get:
      tags:
      - Marketplace
      summary: My Purchases
      operationId: my_purchases_api_marketplace_purchases_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/templates/{slug}/purchase:
    post:
      tags:
      - Marketplace
      summary: Purchase Template
      operationId: purchase_template_api_marketplace_templates__slug__purchase_post
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates:
    get:
      tags:
      - Marketplace
      summary: Studio Templates
      operationId: studio_templates_api_marketplace_studio_templates_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
    post:
      tags:
      - Marketplace
      summary: Studio Create
      operationId: studio_create_api_marketplace_studio_templates_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTemplateRequest'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/stats:
    get:
      tags:
      - Marketplace
      summary: Studio Stats
      operationId: studio_stats_api_marketplace_studio_stats_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/studio/source-projects:
    get:
      tags:
      - Marketplace
      summary: Studio Source Projects
      operationId: studio_source_projects_api_marketplace_studio_source_projects_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/studio/starter:
    get:
      tags:
      - Marketplace
      summary: Studio Starter
      description: 'A working template laid out the way the importer expects.


        Generated by html_import itself rather than kept as a static file, so the

        structure publishers are told to build on cannot drift from the rules the

        importer actually applies — there is a test that imports it and asserts

        zero warnings.'
      operationId: studio_starter_api_marketplace_studio_starter_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/marketplace/studio/templates/upload:
    post:
      tags:
      - Marketplace
      summary: Studio Upload Zip
      description: 'Create a draft template from a ZIP of static HTML.


        The upload is read fully into memory, which is what bounds it: the ZIP

        limit in html_import is the real guard, and streaming to disk first would

        only move where an oversized file hurts.'
      operationId: studio_upload_zip_api_marketplace_studio_templates_upload_post
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/Body_studio_upload_zip_api_marketplace_studio_templates_upload_post'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}:
    get:
      tags:
      - Marketplace
      summary: Studio Get
      operationId: studio_get_api_marketplace_studio_templates__template_id__get
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    put:
      tags:
      - Marketplace
      summary: Studio Update
      operationId: studio_update_api_marketplace_studio_templates__template_id__put
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTemplateRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Marketplace
      summary: Studio Delete
      operationId: studio_delete_api_marketplace_studio_templates__template_id__delete
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}/resnapshot:
    post:
      tags:
      - Marketplace
      summary: Studio Resnapshot
      operationId: studio_resnapshot_api_marketplace_studio_templates__template_id__resnapshot_post
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}/refresh-cover:
    post:
      tags:
      - Marketplace
      summary: Studio Refresh Cover
      description: 'Replace a cover that no longer loads with a fresh screenshot of the

        template''s home page. The editor calls it when the cover image fails.'
      operationId: studio_refresh_cover_api_marketplace_studio_templates__template_id__refresh_cover_post
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}/publish:
    post:
      tags:
      - Marketplace
      summary: Studio Publish
      operationId: studio_publish_api_marketplace_studio_templates__template_id__publish_post
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}/unpublish:
    post:
      tags:
      - Marketplace
      summary: Studio Unpublish
      operationId: studio_unpublish_api_marketplace_studio_templates__template_id__unpublish_post
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/marketplace/studio/templates/{template_id}/archive:
    post:
      tags:
      - Marketplace
      summary: Studio Archive
      operationId: studio_archive_api_marketplace_studio_templates__template_id__archive_post
      parameters:
      - name: template_id
        in: path
        required: true
        schema:
          type: string
          title: Template Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    Body_studio_upload_zip_api_marketplace_studio_templates_upload_post:
      properties:
        file:
          type: string
          contentMediaType: application/octet-stream
          title: File
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
      type: object
      required:
      - file
      title: Body_studio_upload_zip_api_marketplace_studio_templates_upload_post
    MarketplaceStartBody:
      properties:
        start:
          anyOf:
          - type: string
            enum:
            - studio
            - library
            - catalogue
          - type: 'null'
          title: Start
      type: object
      title: MarketplaceStartBody
      description: 'Where a publisher''s marketplace sign-in opens; null to be asked again.

        The three values mirror MARKETPLACE_STARTS in marketplace/router.py.'
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    UpdateTemplateRequest:
      properties:
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        slug:
          anyOf:
          - type: string
          - type: 'null'
          title: Slug
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        category:
          anyOf:
          - type: string
          - type: 'null'
          title: Category
        tags:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Tags
        price_cents:
          anyOf:
          - type: integer
          - type: 'null'
          title: Price Cents
        featured:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Featured
        cover_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Cover Url
        gallery_urls:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Gallery Urls
        platform:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform
      type: object
      title: UpdateTemplateRequest
    CreateTemplateRequest:
      properties:
        source_project_id:
          type: string
          title: Source Project Id
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
      type: object
      required:
      - source_project_id
      title: CreateTemplateRequest
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError