For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dashboard
User GuideDeveloper GuidesAPI Reference
User GuideDeveloper GuidesAPI Reference
    • Overview
  • Runtype API
      • GETList products
      • POSTCreate product
      • POSTAssemble product from FPO
      • GETGet product details
      • PUTUpdate product
      • DELDelete product
      • POSTAdd capability to product
      • PUTUpdate capability
      • DELRemove capability
      • GETPreview cleanup resources
      • GETGet product configuration summary
      • GETList surfaces
      • POSTCreate surface
      • GETGet surface details
      • PUTUpdate surface
      • DELDelete surface
      • POSTAdd item to surface
      • PUTUpdate surface item
      • DELRemove surface item
      • POSTCreate surface API key
      • DELDelete surface API key
      • GETReveal development surface key
      • GETList schedules for surface
      • POSTCreate schedule for surface
      • GETGet schedule details
      • PUTUpdate schedule
      • DELDelete schedule
      • POSTPause schedule
      • POSTResume schedule
      • POSTRun schedule immediately
Dashboard
LogoLogo
Runtype APIProducts

Create surface

POST
/v1/products/:id/surfaces
POST
/v1/products/:id/surfaces
$curl -X POST https://api.runtype.com/v1/products/id/surfaces \
> -H "Authorization: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{
> "name": "Public API",
> "type": "api",
> "config": {
> "rateLimit": {
> "perDay": 5000,
> "perMinute": 60
> },
> "type": "api"
> },
> "status": "active"
>}'
1{
2 "createdAt": "string",
3 "environment": "string",
4 "id": "string",
5 "items": [
6 null
7 ],
8 "keys": [
9 null
10 ],
11 "name": "string",
12 "productId": "string",
13 "status": "string",
14 "type": "string",
15 "updatedAt": "string"
16}
Create a new surface for a product. Checks entitlement limits via Schematic.
Was this page helpful?
Previous

Get surface details

Next
Built with

Authentication

AuthorizationBearer
API key or Clerk session token

Path parameters

idstringRequired

Request

This endpoint expects an object.
namestringRequired1-255 characters
typeenumRequired
behavioranyOptional
configanyOptional
environmentenumOptionalDefaults to development
Allowed values:
inboundmap from strings to anyOptional
outboundmap from strings to anyOptional
statusenumOptional
Allowed values:

Response

Surface created
createdAtstring
environmentstring
idstring
itemslist of any
keyslist of any
namestring
productIdstring
statusstring
typestring
updatedAtstring
behaviorany
inboundany
outboundany

Errors

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error