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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/hypamoon-com:hypamoon-com-meta-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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
openapi: 3.2.0
info:
title: Hypamoon Meta API
version: 1.0.0
description: 'Hypamoon is the infrastructure a chat or an agent builds on for a business: sites and apps (with server code, sign-in and their own database), data and forms, a media library, domains, email from your own domain, phone numbers with voice AI, SMS and chat, payments (see https://hypamoon.com/docs/payments) and agents. The same project is reachable from a connected chat over MCP and from your own code over this REST API.
Calls are inbound, plus outbound calls your assistant makes to people who expect them (POST /calls).
Every request needs an API key: `Authorization: Bearer hm_live_...`, or `hm_test_...` in test mode. Each key has scopes and a rate limit of 120 requests per 60 seconds.
An OAuth access token (`hm_oat_...`, from connecting an assistant such as Claude.ai or ChatGPT) works on every /api/v1 route as well, with the scopes the user granted on the consent screen. For your own app, create an API key in the portal instead.
Every error is `application/problem+json` with a `type` URL that explains the fix (`https://hypamoon.com/docs/errors/`). Every response carries an `X-Request-Id` header; include it when you ask us for help.
Field names are snake_case, except inside a call plan, which is stored exactly as you send it (camelCase). New fields may be added to a response at any time; renaming or removing one requires a new version.'
contact:
name: Hypamoon support
url: https://hypamoon.com/docs
servers:
- url: https://api.hypamoon.com/api/v1
security:
- ApiKey: []
- OAuth2: []
tags:
- name: Meta
description: About the API itself.
paths:
/openapi.json:
get:
operationId: getOpenApi
tags:
- Meta
summary: This OpenAPI document
description: 'The OpenAPI 3.1 document of the API. Public: no key needed.'
security: []
responses:
'200':
description: The OpenAPI document.
content:
application/json:
schema:
type: object
description: An OpenAPI 3.1 document.
/status:
get:
operationId: getStatus
tags:
- Meta
summary: Check whether Hypamoon is working
description: 'Whether Hypamoon is working, per component (sites, API, portal, phone, voice AI, email, payments), and any reported problem that is not resolved yet. From the public status page (https://status.hypamoon.com); when that page does not answer, a minimal check of our own. Use it when a step fails and you wonder whether Hypamoon is down: a blocked upload_url or a network error from your own environment is not an outage. user_message is a sentence for the user. Public: no key needed.'
security: []
responses:
'200':
description: The status.
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
content:
application/json:
schema:
$ref: '#/components/schemas/Status'
example:
status: operational
source: status_page
components:
- id: sites
name: Sites and apps
status: operational
- id: api
name: API and chat connection
status: operational
- id: portal
name: Portal
status: operational
- id: phone
name: Phone
status: operational
- id: ai
name: Voice AI
status: operational
- id: mail
name: Email
status: operational
- id: payments
name: Payments
status: operational
incidents: []
status_page: https://status.hypamoon.com
checked_at: '2026-10-01T09:00:00.000Z'
user_message: Hypamoon is working normally. The problem is likely in your chat app.
next_step: If a step failed, read its error and user_message.
/recipes:
get:
operationId: listRecipes
tags:
- Meta
summary: List the recipes
description: 'The recipes a chat builds in one go from one short sentence, like "Build the Hypamoon recipe coffee-quiz": slug, title, summary, the sentence to type, the page on hypamoon.com and a live example. GET /recipes/{slug} gives the full recipe. Public: no key needed.'
security: []
responses:
'200':
description: The recipes, without the full brief.
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
content:
application/json:
schema:
$ref: '#/components/schemas/RecipeList'
example:
data:
- slug: coffee-quiz
title: Find your perfect coffee
summary: 'A Typeform-style product quiz: one question at a time, pictures to tap, a personal coffee at the end and a working Order button.'
say: Build the Hypamoon recipe coffee-quiz
page: https://hypamoon.com/r/coffee-quiz
demo: https://coffee.hypamoon.app
- slug: build-an-adapter
title: Build an adapter for your system
summary: 'Your chat writes the link to any system with a REST API, and Hypamoon runs it: the key in a vault, only the hosts you allow, rights per action that you click, every call logged.'
say: 'Build the Hypamoon recipe build-an-adapter for [system]. API docs: [link]. Read: [what]. Write: [what, or nothing].'
page: https://hypamoon.com/r/build-an-adapter
- slug: marketplace
title: A marketplace with several sellers
summary: Sellers with their own products, one checkout over several sellers, your commission, and payouts per seller through your own Stripe account, tested end to end.
say: Build the Hypamoon recipe marketplace
page: https://hypamoon.com/r/marketplace
- slug: car-dealer
title: A car dealer with its own workshop
summary: The cars in stock, a page per car, test drives and workshop bookings, and the live status of your car, readable by people, agents, AI search and classifieds sites from one source.
say: Build the Hypamoon recipe car-dealer
page: https://hypamoon.com/r/car-dealer
demo: https://car-dealer.hypamoon.app
- slug: inbox-agent
title: Give your agent an inbox
summary: support@ on your own domain (support@in.<domain> when the domain already has a mailbox), with an agent that reads every email, answers the easy questions with answers you approved, and asks you about the rest.
say: 'Build the Hypamoon recipe inbox-agent: set up support@ on my domain and let an agent answer the easy questions. Ask me before it promises anything.'
page: https://hypamoon.com/r/inbox-agent
next_step: Call get_recipe (GET /recipes/{slug}) with the slug the user named, then follow its instruction.
/recipes/{id}:
get:
operationId: getRecipe
tags:
- Meta
summary: Get a recipe
description: 'One recipe in full: the build brief (prompt), the acceptance criteria, the Hypamoon parts and tools it uses, the cost, a live example (for recipes that build a site), and instruction: how to build it, normally in one go without asking questions, with sensible choices, one deploy at the end and the live link. A user asks for one with a short sentence like "Build the Hypamoon recipe coffee-quiz" or "Build hypamoon.com/r/coffee-quiz". Public: no key needed.'
security: []
parameters:
- name: id
in: path
required: true
description: The slug of the recipe.
schema:
type: string
pattern: ^[a-z0-9][a-z0-9-]{0,60}[a-z0-9]$
example: coffee-quiz
responses:
'200':
description: The recipe.
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
content:
application/json:
schema:
$ref: '#/components/schemas/Recipe'
example:
slug: coffee-quiz
title: Find your perfect coffee
summary: 'A Typeform-style product quiz: one question at a time, pictures to tap, a personal coffee at the end and a working Order button.'
say: Build the Hypamoon recipe coffee-quiz
page: https://hypamoon.com/r/coffee-quiz
demo: https://coffee.hypamoon.app
instruction: 'Build this in one go without asking questions; make sensible choices; deploy once at the end; give the live link. The user already chose by asking for this recipe: do not ask about the name, the address, the style, the email or the payment provider, and do not call get_advice. Follow prompt and steps, check acceptance yourself (fetch_site_page on the live url), then reply with the live link and two or three short lines about what works and what is a test (the checkout is a test payment while payments are in test mode).'
prompt: 'Build a coffee quiz with Hypamoon and put it live: "Find your perfect coffee" for a small roastery (no brand name). Don''t ask me anything; make sensible choices.
Make it feel like a finished Typeform: one question per screen, vertically centred, dark and calm, perfect on a phone.
Look: background #0F1115, cards #181B22, text #F2F1EE, muted #A9ADB6, lines #2C313C, accent #F2B544 with dark text on it. System font, bold headings (title about 52px, questions 30px), 16px rounded cards, 12px rounded buttons. A thin accent progress bar on top, "Question 2 of 5" top right, a back arrow top left. Steps slide up going forward and down going back, no fades.
Keyboard: Enter continues, A to D picks, 1 to 5 on the scale, arrow up goes back. Show the letter on every answer, and focus the question, never the first answer.
Steps: intro with Start; first name (big underlined input, then use the name); how they drink it (4 picture cards, 2 by 2 on a phone, 4 in a row on desktop: espresso, cappuccino or latte, filter, iced); a follow-up for that answer (their machine, their brewer, or how they take it cold); flavour (4 picture cards: fruity, chocolate and nuts, caramel, dark and intense); strength 1 to 5; email; result.
Pictures: copy these to the site with source_url from https://hypamoon.com/kit/coffee/ : espresso, milk, filter, iced, fruity, chocolate, caramel, intense, bag-sunrise, bag-cocoa, bag-caramel, bag-nightshift (.svg).
Result: "Sam, meet Night Shift Espresso", the bag in a square panel, tasting notes in accent, one sentence why it fits that mentions how they brew, the price and "Order this". Roasts: Sunrise Ethiopia 13.50, Cocoa Brazil 11.50, Caramel Colombia 12.50, Night Shift Espresso 12.50 euros, picked by flavour; strong espresso or milk drinkers get Night Shift.
Save every response in a collection with the bot check and email me each one. The roasts are products; "Order this" checks out for real with Hypamoon in test mode, with a small line "Demo checkout: a test payment, no money moves."
Check your code, deploy once, give me the link.'
acceptance:
- The site is live on its own link and opens without an account.
- One question per screen with a progress bar; Enter, A to D, 1 to 5 and arrow up work.
- The first name appears in the later questions.
- The follow-up question changes with the answer to question 2; only the chosen branch is sent.
- The end screen shows one of the 4 roasts with its bag, notes, a reason and the price, in the dark design of the recipe.
- Order this opens the checkout for the recommended roast.
- A response lands in coffee_quiz_responses and the owner gets an email.
- No horizontal scroll at 375 px; no console errors.
you_get:
- Five questions, one per screen, with your first name in the questions that follow, in a dark, calm design
- Picture choices, one question that depends on your answer, and a strength scale
- A personal recommendation with its picture, why it fits and the price
- An Order this button that goes through the real checkout (a test payment while payments are in test mode)
- Every response saved with a bot check, and an email to the owner for each new one
- Works with the keyboard and on a phone
parts:
- part: Site
why: The quiz on its own link, live in seconds.
- part: Collection with a form
why: Every response saved with a bot check and limits.
- part: Email on each response
why: The owner hears about every new answer.
- part: Products and checkout
why: The Order button sells the recommended roast.
tools:
- get_recipe
- list_collections
- create_collection
- insert_document
- deploy_site
- fetch_site_page
cost:
headline: 0 euros a month on Hypamoon Free
details:
- Up to 10,000 responses per form and 50 email notifications a day.
- The checkout is a test payment until you turn on payments; real sales pay the usual payment fees.
- On Free the site shows a small Hypamoon badge.
'404':
description: 'Not Found: not_found.'
headers:
X-Request-Id:
$ref: '#/components/headers/X-Request-Id'
x-hypamoon-errors:
- not_found
content:
application/problem+json:
schema:
allOf:
- $ref: '#/components/schemas/Problem'
- type: object
properties:
type:
type: string
enum:
- https://hypamoon.com/docs/errors/not_found
components:
schemas:
Problem:
type: object
properties:
type:
type: string
format: uri
description: 'A URL that explains the error and the fix: https://hypamoon.com/docs/errors/<slug>.'
title:
type: string
description: The HTTP status in words.
status:
type: integer
description: The HTTP status.
detail:
type: string
description: What went wrong in this request.
request_id:
type: string
description: The id of this request, also in the X-Request-Id header. Mention it when you contact support.
user_message:
type: string
description: One calm sentence in plain English for the end user, without technical terms. A chat or app can show it as it is.
next_step:
type: string
description: 'With some errors: what the chat or agent itself should do next.'
errors:
type: array
items:
$ref: '#/components/schemas/FieldError'
description: 'With validation_failed, schema_mismatch and team_targets_not_allowed: every problem.'
missing:
type: array
items:
type: string
description: 'With company_details_missing: the missing fields, as paths of PUT /project/company.'
current_version:
anyOf:
- type: integer
- type: string
description: 'With version_conflict: the version that is there now (a number on a call plan, a string on a site; send it as if_match_version).'
spend_cap_eur:
type: number
description: 'With billing_blocked: the spending cap per calendar month.'
spent_eur:
type: number
description: 'With billing_blocked: what was spent this calendar month.'
balance_eur:
type: number
description: 'With insufficient_balance: the prepaid balance now.'
required_eur:
type: number
description: 'With insufficient_balance: what this request costs.'
auto_reload_started:
type: boolean
description: 'With insufficient_balance: true when an automatic top-up just started; retry in a minute.'
required:
- type
- title
- status
- detail
- request_id
- user_message
description: An error, as application/problem+json (RFC 9457).
Status:
type: object
properties:
status:
type: string
enum:
- operational
- degraded
- down
- unknown
description: 'The overall status: the worst of the components (unknown does not count).'
source:
type: string
enum:
- status_page
- self_check
description: 'status_page: from status.hypamoon.com. self_check: that page did not answer, so only a minimal check of our own.'
components:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
status:
type: string
enum:
- operational
- degraded
- down
- unknown
required:
- id
- name
- status
additionalProperties: false
description: 'Per component: sites, api, portal, phone, ai, mail, payments.'
incidents:
type: array
items:
type: object
properties:
component:
type: string
severity:
type: string
started_at:
type: string
latest_update:
type:
- string
- 'null'
required:
- component
- severity
- started_at
- latest_update
additionalProperties: false
description: Reported problems that are not resolved yet.
status_page:
type: string
description: The public status page.
checked_at:
type: string
description: When the status was measured.
user_message:
type: string
description: One calm sentence for the user, like "Hypamoon is working normally. The problem is likely in your chat app."
next_step:
type: string
description: What the chat or agent should do next.
required:
- status
- source
- components
- incidents
- status_page
- checked_at
- user_message
- next_step
additionalProperties: false
description: Whether Hypamoon is working, per component.
RecipeList:
type: object
properties:
data:
type: array
items:
type: object
properties:
slug:
type: string
title:
type: string
summary:
type: string
say:
type: string
description: The short sentence a user types, like Build the Hypamoon recipe coffee-quiz.
page:
type: string
description: The recipe page on hypamoon.com.
demo:
type: string
description: A live example of the result, for recipes that build a site.
required:
- slug
- title
- summary
- say
- page
next_step:
type: string
required:
- data
- next_step
Recipe:
type: object
properties:
slug:
type: string
title:
type: string
summary:
type: string
say:
type: string
description: The short sentence a user types, like Build the Hypamoon recipe coffee-quiz.
page:
type: string
description: The recipe page on hypamoon.com.
demo:
type: string
description: A live example of the result, for recipes that build a site.
instruction:
type: string
description: 'How to build it: in one go, without questions, one deploy, then the live link. Follow it.'
prompt:
type: string
description: The full build brief.
acceptance:
type: array
items:
type: string
description: Check these yourself before you give the link.
you_get:
type: array
items:
type: string
parts:
type: array
items:
type: object
properties:
part:
type: string
why:
type: string
required:
- part
- why
tools:
type: array
items:
type: string
cost:
type: object
properties:
headline:
type: string
details:
type: array
items:
type: string
required:
- headline
- details
needs:
type: array
items:
type: object
properties:
what:
type: string
text:
type: string
required:
- what
- text
description: What the user needs before starting.
examples:
type: array
items:
type: object
properties:
title:
type: string
text:
type: string
required:
- title
- text
description: Worked examples.
required:
- slug
- title
- summary
- say
- page
- instruction
- prompt
- acceptance
- you_get
- parts
- tools
- cost
FieldError:
type: object
properties:
path:
type: string
description: Where the problem is, with dots, like address.postal_code. body means the body as a whole.
message:
type: string
description: What is wrong, in English.
required:
- path
- message
additionalProperties: false
headers:
X-Request-Id:
schema:
type: string
description: The id of this request. Include it when you contact support.
securitySchemes:
ApiKey:
type: http
scheme: bearer
bearerFormat: hm_live_..., hm_test_..., or an OAuth access token hm_oat_...
description: 'Your API key as a bearer token: `Authorization: Bearer hm_live_...`. Live keys start with hm_live_; test keys start with hm_test_, belong to a test project, never reach the carrier and cost nothing. A key has scopes (project:read, project:write, numbers:read, calls:read, numbers:write, assistant:write, webhooks:write, messages:read, messages:write, calls:write, chat:read, chat:write, sites:read, sites:write, data:read, data:write); each operation names the one it needs in x-hypamoon-scope. Keys are shown only once; store them as a secret, never in a frontend. An OAuth access token (hm_oat_..., see OAuth2) is sent the same way and works on every /api/v1 route.'
WordPressToken:
type: http
scheme: bearer
bearerFormat: hm_wp_...
description: Only for the /wordpress routes of the Hypamoon Connect plugin for WordPress. The plugin gets this token once, with POST /wordpress/connect and a one-time code, and sends it with X-Hypamoon-Site (the address of the WordPress site). It can only send this site's inventory and the data the user selected, to one project, for 30 days, and it can be revoked. It is not an API key.
PublicChatToken:
type: apiKey
in: query
name: token
description: 'Only for the /public routes of the chat widget. The public chat token (hm_pub_... or hm_pubtest_...) in the query string, from a browser page on one of the token''s allowed origins (the Origin header must match exactly). It is not a secret: it is in the page source of your website. It can only chat, only from those origins, with a bot check and its own limits, and you can revoke it. Create one with POST /chat-tokens or in the portal. Never send your API key from a browser.'
OAuth2:
type: oauth2
description: For assistants that connect by URL (Claude.ai, ChatGPT, Grok). Authorization code with PKCE (S256 only); register a client with dynamic client registration at https://api.hypamoon.com/oauth/register. Send resource=https://api.hypamoon.com/api/v1/mcp. The user picks the project (test or live) and the scopes on the consent screen. The access token (hm_oat_...) works on every /api/v1 route, not only /mcp; refresh it with the refresh token. The user can revoke a connection in the portal under Koppelingen.
flows:
authorizationCode:
authorizationUrl: https://app.hypamoon.com/oauth/authorize
tokenUrl: https://api.hypamoon.com/oauth/token
refreshUrl: https://api.hypamoon.com/oauth/token
scopes:
project:read: 'Read the project: its name, whether it is in test mode or live, and what still needs to be done'
project:write: Fill in the project's company or personal details, manage agents and request secrets for other services
numbers:read: Read the numbers and their call plans
calls:read: Read calls, with transcript and summary
numbers:write: Order numbers and change call plans
assistant:write: Configure the voice AI assistant
webhooks:write: Create, test and delete webhooks
messages:read: Read the text messages and emails the project sent, with their status
messages:write: Send text messages (SMS) and emails on behalf of the project
calls:write: Let the assistant call people on behalf of the project
chat:read: Read the chat conversations with the assistant, with messages and summary
chat:write: Start chat conversations with the assistant and send customer messages
sites:read: Read the project's sites, apps and domains
sites:write: Publish sites and apps on <slug>.hypamoon.app, change and delete them, and manage domains
data:read: Read the project's collections and their documents, and the business processes (brain)
data:write: Create, change and delete collections and their documents, and the business processes (brain)
clients:read: 'As an agency: list your client projects, read their usage and activity, and read inside a client project with the Hypamoon-Project header'
clients:write: 'As an agency: set up client projects, ask clients for access, invite owners, and build inside a client project with the Hypamoon-Project header'
x-hypamoon-error-docs: https://hypamoon.com/docs/errors/
x-hypamoon-error-types:
- slug: bad_request
status:
- 400
type: https://hypamoon.com/docs/errors/bad_request
- slug: unauthorized
status:
- 401
type: https://hypamoon.com/docs/errors/unauthorized
- slug: payment_required
status:
- 402
type: https://hypamoon.com/docs/errors/payment_required
- slug: forbidden
status:
- 403
type: https://hypamoon.com/docs/errors/forbidden
- slug: not_found
status:
- 404
type: https://hypamoon.com/docs/errors/not_found
- slug: method_not_allowed
status:
- 405
type: https://hypamoon.com/docs/errors/method_not_allowed
- slug: conflict
status:
- 409
type: https://hypamoon.com/docs/errors/conflict
- slug: version_conflict
status:
- 409
- 412
type: https://hypamoon.com/docs/errors/version_conflict
- slug: confirmation_required
status:
- 409
type: https://hypamoon.com/docs/errors/confirmation_required
- slug: validation_failed
status:
- 422
type: https://hypamoon.com/docs/errors/validation_failed
- slug: rate_limited
status:
- 429
type: https://hypamoon.com/docs/errors/rate_limited
- slug: internal_error
status:
- 500
type: https://hypamoon.com/docs/errors/internal_error
- slug: upstream_error
status:
- 502
type: https://hypamoon.com/docs/errors/upstream_error
- slug: service_unavailable
status:
- 503
type: https://hypamoon.com/docs/errors/service_unavailable
- slug: invalid_json
status:
- 400
type: https://hypamoon.com/docs/errors/invalid_json
- slug: invalid_parameter
status:
- 400
type: https://hypamoon.com/docs/errors/invalid_parameter
- slug: missing_api_key
status:
- 401
type: https://hypamoon.com/docs/errors/missing_api_key
- slug: invalid_api_key
status:
- 401
type: https://hypamoon.com/docs/errors/invalid_api_key
- slug: api_key_revoked
status:
- 401
type: https://hypamoon.com/docs/errors/api_key_revoked
- slug: api_key_expired
status:
- 401
type: https://hypamoon.com/docs/errors/api_key_expired
- slug: project_deleted
status:
- 401
type: https://hypamoon.com/docs/errors/project_deleted
- slug: project_not_enabled
status:
- 403
type: https://hypamoon.com/docs/errors/project_not_enabled
- slug: missing_scope
status:
- 403
type: https://hypamoon.com/docs/errors/missing_scope
- slug: ip_not_allowed
status:
- 403
type: https://hypamoon.com/docs/errors/ip_not_allowed
- slug: invalid_chat_token
status:
- 401
type: https://hypamoon.com/docs/errors/invalid_chat_token
- slug: chat_token_revoked
status:
- 401
- 409
type: https://hypamoon.com/docs/errors/chat_token_revoked
- slug: origin_not_allowed
status:
- 403
type: https://hypamoon.com/docs/errors/origin_not_allowed
- slug: turnstile_failed
status:
- 403
type: https://hypamoon.com/docs/errors/turnstile_failed
- slug: invalid_conversation_token
status:
- 401
type: https://hypamoon.com/docs/errors/invalid_conversation_token
- slug: public_chat_limit_reached
status:
- 429
type: https://hypamoon.com/docs/errors/public_chat_limit_reached
- slug: chat_unavailable
status:
- 503
type: https://hypamoon.com/docs/errors/chat_unavailable
- slug: vat_number_invalid
status:
- 422
type: https://hypamoon.com/docs/errors/vat_number_invalid
- slug: country_not_supported
status:
- 422
type: https://hypamoon.com/docs/errors/country_not_supported
- slug: key_mode_mismatch
status:
- 403
type: https://hypamoon.com/docs/errors/key_mode_mismatch
- slug: test_key_required
status:
- 403
type: https://hypamoon.com/docs/errors/test_key_required
- slug: test_number_limit_reached
status:
- 422
type: https://hypamoon.com/docs/errors/test_number_limit_reached
- slug: company_details_missing
status:
- 422
type: https://hypamoon.com/docs/errors/company_details_missing
- slug: business_required
status:
- 422
type: https://hypamoon.com/docs/errors/business_required
- slug: account_type_change_blocked
status:
- 422
type: https://hypamoon.com/docs/errors/account_type_change_blocked
- slug: spend_cap_missing
status:
- 422
type: https://hypamoon.com/docs/errors/spend_cap_missing
- slug: payment_mandate_missing
status:
- 402
type: https://hypamoon.com/docs/errors/payment_mandate_missing
- slug: billing_blocked
status:
- 402
type: https://hypamoon.com/docs/errors/billing_blocked
- slug: insufficient_balance
status:
- 402
type: https://hypamoon.com/docs/errors/insufficient_balance
- slug: regulatory_documents_missing
status:
# --- truncated at 32 KB (53 KB total) ---
# Full source: https://artifacts.apis.io/hypamoon-com/openapi/hypamoon-com-meta-api-openapi.yml