vee3-io Pages API

The pages API from vee3-io — 5 operation(s) for pages.

Operations 9

POST /v1/pages Create page #
GET /v1/pages List pages #
GET /v1/pages/{page_id} Get page #
PATCH /v1/pages/{page_id} Edit page #
DELETE /v1/pages/{page_id} Delete page #
GET /v1/pages/{page_id}/statistics Get page statistics #
POST /v1/pages/{page_id}/custom-domain Set custom domain #
DELETE /v1/pages/{page_id}/custom-domain Remove custom domain #
POST /v1/pages/{page_id}/deploy Deploy page #

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/vee3-io:vee3-io-pages-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

vee3-io-pages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vee3 Io Pages API
  version: 0.1.0
  description: 'Operations tagged pages across 2 of this provider''s published API definitions: vee3-io.json, vee3-io-openapi.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Pages
paths:
  /v1/pages:
    post:
      tags:
      - Pages
      summary: Create page
      description: Create a static website with a CDN URL.
      operationId: hosting_create_site_v1_pages_post
      security:
      - HTTPBearer: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostingCreateSiteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingCreateSiteResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - Pages
      summary: List pages
      description: List static websites hosted through this Vee3 account.
      operationId: hosting_list_sites_v1_pages_get
      security:
      - HTTPBearer: []
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 100
          minimum: 1
          default: 50
          title: Limit
      - name: page
        in: query
        required: false
        schema:
          type: integer
          minimum: 1
          default: 1
          title: Page
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingListSitesResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/pages/{page_id}:
    get:
      tags:
      - Pages
      summary: Get page
      description: Retrieve details for one static website hosted through this Vee3 account.
      operationId: hosting_get_site_v1_pages__page_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingGetSiteResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    patch:
      tags:
      - Pages
      summary: Edit page
      description: Update the display name and public slug for a hosted static website.
      operationId: hosting_edit_site_v1_pages__page_id__patch
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostingEditSiteRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingGetSiteResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Pages
      summary: Delete page
      description: Delete a static website hosted through this Vee3 account.
      operationId: hosting_delete_site_v1_pages__page_id__delete
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingDeleteSiteResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/pages/{page_id}/statistics:
    get:
      tags:
      - Pages
      summary: Get page statistics
      description: Get CDN request count, bandwidth, cache hit rate, and country mix for one hosted page.
      operationId: get_pages_statistics_v1_pages__page_id__statistics_get
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      - name: date_from
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: Inclusive UTC start date (YYYY-MM-DD). Defaults to 6 days before date_to.
          title: Date From
        description: Inclusive UTC start date (YYYY-MM-DD). Defaults to 6 days before date_to.
      - name: date_to
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date
          - type: 'null'
          description: Inclusive UTC end date (YYYY-MM-DD). Defaults to today UTC.
          title: Date To
        description: Inclusive UTC end date (YYYY-MM-DD). Defaults to today UTC.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagesStatisticsResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/pages/{page_id}/custom-domain:
    post:
      tags:
      - Pages
      summary: Set custom domain
      description: Attach a custom hostname on a managed Vee3 domain to a hosted static website.
      operationId: hosting_set_custom_domain_v1_pages__page_id__custom_domain_post
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostingSetCustomDomainRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingSetCustomDomainResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Pages
      summary: Remove custom domain
      description: Detach the custom hostname from a hosted static website.
      operationId: hosting_remove_custom_domain_v1_pages__page_id__custom_domain_delete
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingGetSiteResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/pages/{page_id}/deploy:
    post:
      tags:
      - Pages
      summary: Deploy page
      description: Deploy previously uploaded files to a hosted static website.
      operationId: hosting_deploy_v1_pages__page_id__deploy_post
      security:
      - HTTPBearer: []
      parameters:
      - name: page_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Page Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostingDeployRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HostingDeployResult'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    PagesStatisticsResult:
      properties:
        page_id:
          type: string
          title: Page Id
        date_from:
          type: string
          title: Date From
        date_to:
          type: string
          title: Date To
        request_count:
          type: integer
          minimum: 0.0
          title: Request Count
        bandwidth_bytes:
          type: integer
          minimum: 0.0
          title: Bandwidth Bytes
        cache_hit_rate:
          type: number
          maximum: 1.0
          minimum: 0.0
          title: Cache Hit Rate
        traffic_by_country:
          items:
            $ref: '#/components/schemas/PagesStatisticsCountryTraffic'
          type: array
          title: Traffic By Country
      type: object
      required:
      - page_id
      - date_from
      - date_to
      - request_count
      - bandwidth_bytes
      - cache_hit_rate
      - traffic_by_country
      title: PagesStatisticsResult
    HostingListSitesResult:
      properties:
        pages:
          items:
            $ref: '#/components/schemas/HostingSiteSummary'
          type: array
          title: Pages
        paging:
          $ref: '#/components/schemas/HostingSitesPaging'
      type: object
      required:
      - pages
      - paging
      title: HostingListSitesResult
    HostingCreateSiteRequest:
      properties:
        slug:
          type: string
          maxLength: 48
          minLength: 1
          title: Slug
        name:
          anyOf:
          - type: string
            maxLength: 80
          - type: 'null'
          title: Name
      type: object
      required:
      - slug
      title: HostingCreateSiteRequest
    HostingDeployFileItem:
      properties:
        file_name:
          type: string
          maxLength: 1024
          minLength: 1
          title: File Name
        path:
          anyOf:
          - type: string
            maxLength: 1024
          - type: 'null'
          title: Path
      type: object
      required:
      - file_name
      title: HostingDeployFileItem
    HostingEditSiteRequest:
      properties:
        name:
          anyOf:
          - type: string
            maxLength: 80
          - type: 'null'
          title: Name
        slug:
          anyOf:
          - type: string
            maxLength: 48
          - type: 'null'
          title: Slug
      additionalProperties: false
      type: object
      title: HostingEditSiteRequest
    HostingSetCustomDomainResult:
      properties:
        page_id:
          type: string
          title: Page Id
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        slug:
          type: string
          title: Slug
        status:
          type: string
          title: Status
        url:
          type: string
          title: Url
        hostname:
          type: string
          title: Hostname
        custom_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Domain
        created_at:
          type: string
          title: Created At
        updated_at:
          type: string
          title: Updated At
        last_deployed_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Deployed At
        message:
          type: string
          title: Message
      type: object
      required:
      - page_id
      - slug
      - status
      - url
      - hostname
      - created_at
      - updated_at
      - message
      title: HostingSetCustomDomainResult
    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
    HostingDeleteSiteResult:
      properties:
        deleted:
          type: boolean
          title: Deleted
        page_id:
          type: string
          title: Page Id
      type: object
      required:
      - deleted
      - page_id
      title: HostingDeleteSiteResult
    HostingCreateSiteResult:
      properties:
        page_id:
          type: string
          title: Page Id
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        slug:
          type: string
          title: Slug
        status:
          type: string
          title: Status
        url:
          type: string
          title: Url
        hostname:
          type: string
          title: Hostname
        custom_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Domain
        created_at:
          type: string
          title: Created At
      type: object
      required:
      - page_id
      - slug
      - status
      - url
      - hostname
      - created_at
      title: HostingCreateSiteResult
    PagesStatisticsCountryTraffic:
      properties:
        country_code:
          type: string
          title: Country Code
        bandwidth_bytes:
          type: integer
          minimum: 0.0
          title: Bandwidth Bytes
      type: object
      required:
      - country_code
      - bandwidth_bytes
      title: PagesStatisticsCountryTraffic
    HostingSiteSummary:
      properties:
        page_id:
          type: string
          title: Page Id
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        slug:
          type: string
          title: Slug
        status:
          type: string
          title: Status
        url:
          type: string
          title: Url
        hostname:
          type: string
          title: Hostname
        custom_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Domain
        created_at:
          type: string
          title: Created At
        last_deployed_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Deployed At
      type: object
      required:
      - page_id
      - slug
      - status
      - url
      - hostname
      - created_at
      title: HostingSiteSummary
    HostingGetSiteResult:
      properties:
        page_id:
          type: string
          title: Page Id
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        slug:
          type: string
          title: Slug
        status:
          type: string
          title: Status
        url:
          type: string
          title: Url
        hostname:
          type: string
          title: Hostname
        custom_domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Custom Domain
        created_at:
          type: string
          title: Created At
        updated_at:
          type: string
          title: Updated At
        last_deployed_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Deployed At
      type: object
      required:
      - page_id
      - slug
      - status
      - url
      - hostname
      - created_at
      - updated_at
      title: HostingGetSiteResult
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    HostingDeployResult:
      properties:
        page_id:
          type: string
          title: Page Id
        url:
          type: string
          title: Url
        deployed_file_count:
          type: integer
          title: Deployed File Count
        deployed_at:
          type: string
          title: Deployed At
      type: object
      required:
      - page_id
      - url
      - deployed_file_count
      - deployed_at
      title: HostingDeployResult
    HostingDeployRequest:
      properties:
        files:
          items:
            $ref: '#/components/schemas/HostingDeployFileItem'
          type: array
          maxItems: 500
          minItems: 1
          title: Files
      type: object
      required:
      - files
      title: HostingDeployRequest
    HostingSetCustomDomainRequest:
      properties:
        custom_domain:
          type: string
          maxLength: 253
          minLength: 1
          title: Custom Domain
      type: object
      required:
      - custom_domain
      title: HostingSetCustomDomainRequest
    HostingSitesPaging:
      properties:
        total_items:
          type: integer
          title: Total Items
        current_page:
          type: integer
          title: Current Page
        page_size:
          type: integer
          title: Page Size
      type: object
      required:
      - total_items
      - current_page
      - page_size
      title: HostingSitesPaging
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
x-refined-from:
- vee3-io.json
- vee3-io-openapi.json