10Web Builder API

Operations for website builder and page management

Operations 6

GET /v1/builder/websites/{website_id}/pages Get pages for a website
POST /v1/builder/websites/{website_id}/pages/blank/add Add a blank page to a website
POST /v1/builder/websites/{website_id}/pages/delete Delete pages from a website
POST /v1/builder/websites/{website_id}/pages/publish Update page status for website pages
POST /v1/builder/websites/{website_id}/pages/front/set Set a page as the front page
POST /v1/builder/websites/{website_id}/build_secondary_page Build a secondary page from description

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/10web-builder-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

10web-builder-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 10Web API V1 Account Builder API
  description: 'The 10Web API provides a comprehensive set of endpoints for managing websites, DNS zones, domains, SSL certificates, backups, and more. This RESTful API allows you to integrate 10Web''s powerful hosting and website management capabilities into your own applications.

    '
servers:
- url: https://api.10web.io
tags:
- name: Builder
  description: Operations for website builder and page management
paths:
  /v1/builder/websites/{website_id}/pages:
    get:
      summary: Get pages for a website
      description: Retrieve a list of all pages for a specific website in the builder interface
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      responses:
        '200':
          description: List of pages retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetPagesResponse'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/builder/websites/{website_id}/pages/blank/add:
    post:
      summary: Add a blank page to a website
      description: Create a new blank page for a website in the builder interface
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateBlankPageRequest'
      responses:
        '200':
          description: Blank page created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateBlankPageResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/builder/websites/{website_id}/pages/delete:
    post:
      summary: Delete pages from a website
      description: Delete one or more pages from a website in the builder interface
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeletePagesRequest'
      responses:
        '200':
          description: Pages deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeletePagesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/builder/websites/{website_id}/pages/publish:
    post:
      summary: Update page status for website pages
      description: Update the publication status of one or more pages from a website in the builder interface
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PublishPagesRequest'
      responses:
        '200':
          description: Page status updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublishPagesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/builder/websites/{website_id}/pages/front/set:
    post:
      summary: Set a page as the front page
      description: Set a specific page as the front page (homepage) for a website in the builder interface
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetFrontPageRequest'
      responses:
        '200':
          description: Front page set successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetFrontPageResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
  /v1/builder/websites/{website_id}/build_secondary_page:
    post:
      summary: Build a secondary page from description
      description: 'Creates a new secondary page for a website using AI-powered content generation.

        This endpoint orchestrates multiple AI service calls to generate page content based

        on business information and page description.

        '
      tags:
      - Builder
      parameters:
      - $ref: '#/components/parameters/WebsiteId'
      - $ref: '#/components/parameters/Authorization'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BuildSecondaryPageRequest'
      responses:
        '200':
          description: Page built successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BuildSecondaryPageResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  parameters:
    WebsiteId:
      name: website_id
      in: path
      required: true
      schema:
        type: integer
    Authorization:
      name: x-api-key
      in: header
      required: true
      schema:
        type: string
      description: API key for authentication
      example: API_KEY
  schemas:
    GetPagesResponse:
      type: object
      properties:
        msg:
          type: string
          description: Status message
        status:
          type: integer
          description: HTTP status code
        data:
          type: array
          description: List of pages for the website
          items:
            $ref: '#/components/schemas/BuilderPage'
      example:
        msg: Success
        status: 200
        data:
        - ID: 82
          title: example page
          url: https://test-proxy-1.10web.club/example-page/
          post_modified: '2025-06-24 12:10:52'
          post_date: '2025-06-24 12:10:52'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
        - ID: 81
          title: test page 2
          url: https://test-proxy-1.10web.club/
          post_modified: '2025-06-20 07:19:46'
          post_date: '2025-06-20 07:19:46'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
          page_on_front: true
        - ID: 80
          title: test page
          url: https://test-proxy-1.10web.club/test-page/
          post_modified: '2025-06-20 07:18:44'
          post_date: '2025-06-20 07:18:44'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
    DeletePagesResponse:
      type: object
      properties:
        msg:
          type: string
          description: Status message
        status:
          type: integer
          description: HTTP status code
        data:
          type: object
          properties:
            message:
              type: string
              description: Success message
      example:
        msg: Success
        status: 200
        data:
          message: Page is deleted.
    BuilderPage:
      type: object
      properties:
        ID:
          type: integer
          description: Page ID
        title:
          type: string
          description: Page title
        url:
          type: string
          description: Page URL
        post_modified:
          type: string
          format: date-time
          description: Date when the page was last modified
        post_date:
          type: string
          format: date-time
          description: Date when the page was created
        twbb_created_with:
          type: string
          description: The tool used to create the page
        post_type:
          type: string
          description: Type of post (e.g., page)
        template_type:
          type: string
          description: Template type for the page
        is_edited:
          type: boolean
          description: Whether the page has been edited
        post_status:
          type: string
          description: Publication status of the page
          enum:
          - publish
          - draft
          - pending
          - private
        page_on_front:
          type:
          - boolean
          - 'null'
          description: Whether this page is set as the front page
    PublishPagesResponse:
      type: object
      properties:
        msg:
          type: string
          description: Status message
        status:
          type: integer
          description: HTTP status code
        data:
          type: object
          properties:
            message:
              type: string
              description: Success message
      example:
        msg: Success
        status: 200
        data:
          message: Page is published.
    DeletePagesRequest:
      type: object
      required:
      - page_ids
      properties:
        page_ids:
          type: array
          description: Array of page IDs to delete
          items:
            type: integer
          example:
          - 82
    CreateBlankPageRequest:
      type: object
      required:
      - page_title
      - post_status
      properties:
        page_title:
          type: string
          description: Title for the new page
          example: My New Page
        post_status:
          type: string
          description: Publication status for the new page
          enum:
          - publish
          - draft
          - pending
          - private
          example: publish
    BuildSecondaryPageRequest:
      type: object
      required:
      - page_title
      - page_description
      properties:
        page_title:
          type: string
          description: Title for the new page
          example: About Us
        page_description:
          type: string
          description: Description of the page content to be generated
          example: A page describing our company history and values
        post_status:
          type: string
          description: Publication status of the page
          default: draft
          enum:
          - draft
          - publish
          example: draft
    BuildSecondaryPageResponse:
      type: object
      properties:
        status:
          type: integer
          description: HTTP status code
          example: 200
        page_id:
          type: string
          description: ID of the created page
          example: '204'
    SetFrontPageResponse:
      type: object
      properties:
        msg:
          type: string
          description: Status message
        status:
          type: integer
          description: HTTP status code
        data:
          type: object
          properties:
            message:
              type: string
              description: Success message
      example:
        msg: Success
        status: 200
        data:
          message: Page is set as frontpage.
    SetFrontPageRequest:
      type: object
      required:
      - page_id
      properties:
        page_id:
          type: integer
          description: ID of the page to set as the front page
          example: 80
    CreateBlankPageResponse:
      type: object
      properties:
        msg:
          type: string
          description: Status message
        status:
          type: integer
          description: HTTP status code
        data:
          type: array
          description: List of all pages including the newly created page
          items:
            $ref: '#/components/schemas/BuilderPage'
      example:
        msg: Success
        status: 200
        data:
        - ID: 82
          title: example page
          url: https://test-proxy-1.10web.club/example-page/
          post_modified: '2025-06-24 12:10:52'
          post_date: '2025-06-24 12:10:52'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
        - ID: 81
          title: test page 2
          url: https://test-proxy-1.10web.club/
          post_modified: '2025-06-20 07:19:46'
          post_date: '2025-06-20 07:19:46'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
          page_on_front: true
        - ID: 80
          title: test page
          url: https://test-proxy-1.10web.club/test-page/
          post_modified: '2025-06-20 07:18:44'
          post_date: '2025-06-20 07:18:44'
          twbb_created_with: twbb_blank
          post_type: page
          template_type: ''
          is_edited: false
          post_status: publish
    PublishPagesRequest:
      type: object
      required:
      - action
      - page_ids
      properties:
        action:
          type: string
          description: Action to perform on the pages
          enum:
          - publish
          - draft
          - pending
          - private
          example: publish
        page_ids:
          type: array
          description: Array of page IDs to publish
          items:
            type: integer
          example:
          - 54
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                - error
              message:
                type: string
                example: Invalid request parameters
    TooManyRequests:
      description: Too many requests
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                - error
              message:
                type: string
                example: Too many requests. Please try again later.
    Unauthorized:
      description: Unauthorized access
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                - error
              message:
                type: string
                example: Unauthorized access
    InternalServerError:
      description: Something went wrong
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                - error
              message:
                type: string
                example: Something went wrong