{"openapi":"3.1.0","info":{"title":"Brandname Maker API","version":"1.0.0","description":"Paid naming and Hero copy: $0.25 stablecoin or $1 card per call. Discovery and polling a paid naming job carry no extra charge.","termsOfService":"https://brandnamemaker.com/terms","contact":{"email":"kevin@brandnamemaker.com"},"x-guidance":"Discover with unpaid GET. Each POST is a separate paid pass, normally USD 0.25 stablecoin or USD 1.00 card/Link. On 402 use npx @stripe/link-cli mpp pay or an MPP wallet; retry with Authorization: Payment <credential>. On naming 202, GET poll_url until done; do not pay again. Hero is synchronous. MCP tools are available at /mcp. Runtime challenges override advisory discovery prices."},"servers":[{"url":"https://brandnamemaker.com"}],"x-service-info":{"categories":["ai","naming","copywriting"],"docs":{"homepage":"https://brandnamemaker.com","apiReference":"https://brandnamemaker.com/for-agents","llms":"https://brandnamemaker.com/llms.txt"}},"x-mpp-configured":true,"paths":{"/api/v1/name":{"get":{"operationId":"discoverOrPollName","summary":"Naming discovery (unpaid) or polling a paid job","security":[],"parameters":[{"name":"job","in":"query","required":false,"description":"Job ID, Link SPT ID, or payment reference. Omit for discovery.","schema":{"type":"string"}}],"responses":{"200":{"description":"Discovery without job; completed naming result with job","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"service":{"type":"string"},"description":{"type":"string"},"endpoint":{"type":"string"},"method":{"const":"POST"},"payment_protocol":{"enum":["mpp","x402"]},"payment_methods":{"type":"array","items":{"type":"object","properties":{"method":{"type":"string"},"currency":{"type":"string"},"price":{"type":"string"},"network":{"type":"string"},"type":{"type":"string"},"protocol":{"type":"string"}},"required":["method","price"]}},"price":{"type":"string"},"network":{"type":"string"},"request_schema":{"type":"object","additionalProperties":{"type":"string"}},"results":{"type":"object","properties":{"poll":{"type":"string"},"note":{"type":"string"}},"required":["poll","note"]},"homepage":{"type":"string"},"prompt_url":{"type":"string"},"for_agents":{"type":"string"},"chain_note":{"type":"string"}},"required":["service","description","endpoint","method","payment_protocol","request_schema","homepage"]},{"type":"object","properties":{"brief":{"type":"string"},"feeling_table":{"type":"string"},"after":{"type":"string"},"experiences":{"type":"string"},"names_table":{"type":"string"},"passerby_reads":{"type":"string"},"customer_test_scores":{"type":"string"},"collisions":{"type":"string"},"domain_checks_error":{"type":"string"},"next_step":{"type":"string"},"raw_output":{"type":"string"},"price":{"type":"string"},"network":{"type":"string"},"job_id":{"type":"string"},"payment_reference":{"type":"string"},"shortlist":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"tagline":{"type":"string"},"rationale":{"type":"string"}},"required":["name"]}},"example_name_leaks":{"type":"array","items":{"type":"string"}},"domain_checks":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"domains":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"status":{"enum":["available","registered","unknown"]},"tag":{"type":"string"},"error":{"type":"string"},"offers":{"type":"array","items":{"type":"object","properties":{"vendor":{"type":"string"},"price":{"type":"string"},"currency":{"type":"string"}}}}},"required":["domain","status"]}}},"required":["name","domains"]}},"domain_checks_status":{"enum":["success","parse_failed","fastly_key_missing","fastly_error","empty_results"]}},"required":["brief","domain_checks","domain_checks_status","raw_output","price","network"]}]}}}},"202":{"description":"Job pending","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer"}},"Location":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"const":"pending"},"job_id":{"type":"string"},"poll_url":{"type":"string","format":"uri"},"retry_after_seconds":{"type":"integer","const":10},"payment_reference":{"type":"string"},"message":{"type":"string"}},"required":["status","job_id","poll_url","retry_after_seconds","message"]}}}},"404":{"description":"Unknown or expired job","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"500":{"description":"Paid job failed (may include refund status)","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}}}},"post":{"operationId":"name","summary":"Run a paid naming pass","description":"MPP can return 202 after about 20 seconds. Poll the supplied URL without paying again. Jobs expire after 24 hours or server restart. Legacy x402 runs synchronously.","security":[{"payment":[]}],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.25"},"x-card-price":{"mode":"fixed","currency":"USD","amount":"1.00"},"protocols":[{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20C000000000000000000000b9537d11c60E8b50"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"}},{"mpp":{"method":"stripe","intent":"charge","currency":"usd"},"x-price":{"mode":"fixed","currency":"USD","amount":"1.00"}},{"x402":{"network":"eip155:8453"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"},"x-description":"Legacy Base USDC"}],"offers":[{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"250000"},{"method":"tempo","intent":"charge","currency":"0x20C000000000000000000000b9537d11c60E8b50","amount":"250000"},{"method":"stripe","intent":"charge","currency":"usd","amount":"100"}],"x-guidance":"Advisory prices by rail; the runtime 402 challenge lists currently enabled rails and authoritative terms. MPP requires server configuration; legacy Base requires its own configuration. Separate charge for each product."},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["brief"],"properties":{"brief":{"type":"string","minLength":1,"pattern":"\\S"},"product":{"type":"string"},"customer":{"type":"string"},"rejected":{"type":"string"}}}}}},"responses":{"200":{"description":"Completed pass","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"brief":{"type":"string"},"feeling_table":{"type":"string"},"after":{"type":"string"},"experiences":{"type":"string"},"names_table":{"type":"string"},"passerby_reads":{"type":"string"},"customer_test_scores":{"type":"string"},"collisions":{"type":"string"},"domain_checks_error":{"type":"string"},"next_step":{"type":"string"},"raw_output":{"type":"string"},"price":{"type":"string"},"network":{"type":"string"},"job_id":{"type":"string"},"payment_reference":{"type":"string"},"shortlist":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"tagline":{"type":"string"},"rationale":{"type":"string"}},"required":["name"]}},"example_name_leaks":{"type":"array","items":{"type":"string"}},"domain_checks":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"domains":{"type":"array","items":{"type":"object","properties":{"domain":{"type":"string"},"status":{"enum":["available","registered","unknown"]},"tag":{"type":"string"},"error":{"type":"string"},"offers":{"type":"array","items":{"type":"object","properties":{"vendor":{"type":"string"},"price":{"type":"string"},"currency":{"type":"string"}}}}},"required":["domain","status"]}}},"required":["name","domains"]}},"domain_checks_status":{"enum":["success","parse_failed","fastly_key_missing","fastly_error","empty_results"]}},"required":["brief","domain_checks","domain_checks_status","raw_output","price","network"]}}}},"202":{"description":"Paid job still running; GET poll_url every 10 seconds.","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer"}},"Location":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"const":"pending"},"job_id":{"type":"string"},"poll_url":{"type":"string","format":"uri"},"retry_after_seconds":{"type":"integer","const":10},"payment_reference":{"type":"string"},"message":{"type":"string"}},"required":["status","job_id","poll_url","retry_after_seconds","message"]}}}},"400":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"402":{"description":"Payment required. Pay the challenge, then retry with Authorization: Payment <credential>. Legacy x402 uses PAYMENT-SIGNATURE or X-PAYMENT.","headers":{"WWW-Authenticate":{"description":"Payment challenge (MPP)","schema":{"type":"string"},"example":"Payment <challenge>"},"PAYMENT-REQUIRED":{"description":"Legacy x402 challenge when enabled","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"description":"Payment protocol challenge body; exact representation depends on the rail."}}}},"500":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"503":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}}}}},"/api/v1/hero":{"get":{"operationId":"discoverHero","summary":"Hero discovery (unpaid)","description":"No polling: any job query is ignored by the existing handler.","security":[],"responses":{"200":{"description":"Hero metadata, request schema, payment methods and prices","content":{"application/json":{"schema":{"type":"object","properties":{"service":{"type":"string"},"description":{"type":"string"},"endpoint":{"type":"string"},"method":{"const":"POST"},"payment_protocol":{"enum":["mpp","x402"]},"payment_methods":{"type":"array","items":{"type":"object","properties":{"method":{"type":"string"},"currency":{"type":"string"},"price":{"type":"string"},"network":{"type":"string"},"type":{"type":"string"},"protocol":{"type":"string"}},"required":["method","price"]}},"price":{"type":"string"},"network":{"type":"string"},"request_schema":{"type":"object","additionalProperties":{"type":"string"}},"results":{"type":"object","properties":{"poll":{"type":"string"},"note":{"type":"string"}},"required":["poll","note"]},"homepage":{"type":"string"},"prompt_url":{"type":"string"},"for_agents":{"type":"string"},"chain_note":{"type":"string"}},"required":["service","description","endpoint","method","payment_protocol","request_schema","homepage"]}}}}}},"post":{"operationId":"hero","summary":"Run a separate paid Hero copy pass","description":"Currently synchronous: returns 200 or an error. The 202 response is reserved for async compatibility and is not emitted by this handler. GET ?job= on Hero returns discovery, not a job.","security":[{"payment":[]}],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.25"},"x-card-price":{"mode":"fixed","currency":"USD","amount":"1.00"},"protocols":[{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"}},{"mpp":{"method":"tempo","intent":"charge","currency":"0x20C000000000000000000000b9537d11c60E8b50"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"}},{"mpp":{"method":"stripe","intent":"charge","currency":"usd"},"x-price":{"mode":"fixed","currency":"USD","amount":"1.00"}},{"x402":{"network":"eip155:8453"},"x-price":{"mode":"fixed","currency":"USD","amount":"0.25"},"x-description":"Legacy Base USDC"}],"offers":[{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"250000"},{"method":"tempo","intent":"charge","currency":"0x20C000000000000000000000b9537d11c60E8b50","amount":"250000"},{"method":"stripe","intent":"charge","currency":"usd","amount":"100"}],"x-guidance":"Advisory prices by rail; the runtime 402 challenge lists currently enabled rails and authoritative terms. MPP requires server configuration; legacy Base requires its own configuration. Separate charge for each product."},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["brand_name","audience"],"anyOf":[{"required":["brief"],"properties":{"brief":{"type":"string","minLength":1,"pattern":"\\S"}}},{"required":["problem","category","capabilities","features","benefits"],"properties":{"problem":{"type":"string","minLength":1,"pattern":"\\S"},"category":{"type":"string","minLength":1,"pattern":"\\S"},"capabilities":{"type":"string","minLength":1,"pattern":"\\S"},"features":{"type":"string","minLength":1,"pattern":"\\S"},"benefits":{"type":"string","minLength":1,"pattern":"\\S"}}}],"properties":{"brand_name":{"type":"string","minLength":1,"pattern":"\\S"},"audience":{"type":"string","minLength":1,"pattern":"\\S"},"brief":{"type":"string"},"product":{"type":"string"},"problem":{"type":"string"},"category":{"type":"string"},"capabilities":{"type":"string"},"features":{"type":"string"},"benefits":{"type":"string"},"count":{"type":"number","default":4,"description":"Rounded and clamped to 3–5 by the handler."}}}}}},"responses":{"200":{"description":"Completed pass","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"brand_name":{"type":"string"},"audience":{"type":"string"},"options":{"type":"array","items":{"type":"object","properties":{"headline":{"type":"string"},"subheadline":{"type":"string"},"scores":{"type":"object","properties":{"overall_ship":{"type":"string"},"confidence":{"type":"number"},"headline_subheadline_fit":{"type":"number"},"kevin_voice_fit":{"type":"number"},"six_element_coverage":{"type":"number"},"clarity_flags":{"type":"number"}},"required":["overall_ship","confidence","headline_subheadline_fit","kevin_voice_fit","six_element_coverage","clarity_flags"]}},"required":["headline","subheadline","scores"]}},"drafted_count":{"type":"number"},"passed_count":{"type":"number"},"rounds":{"type":"number"},"price":{"type":"string"},"network":{"type":"string"}},"required":["brand_name","audience","options","drafted_count","passed_count","rounds","price","network"]}}}},"202":{"description":"Reserved async response; Hero currently never emits this status.","headers":{"Payment-Receipt":{"description":"MPP payment receipt, when present on the endpoint response.","schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer"}},"Location":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"const":"pending"},"job_id":{"type":"string"},"poll_url":{"type":"string","format":"uri"},"retry_after_seconds":{"type":"integer","const":10},"payment_reference":{"type":"string"},"message":{"type":"string"}},"required":["status","job_id","poll_url","retry_after_seconds","message"]}}}},"400":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"402":{"description":"Payment required. Pay the challenge, then retry with Authorization: Payment <credential>. Legacy x402 uses PAYMENT-SIGNATURE or X-PAYMENT.","headers":{"WWW-Authenticate":{"description":"Payment challenge (MPP)","schema":{"type":"string"},"example":"Payment <challenge>"},"PAYMENT-REQUIRED":{"description":"Legacy x402 challenge when enabled","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"description":"Payment protocol challenge body; exact representation depends on the rail."}}}},"500":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"502":{"description":"no_ship_options; no Hero options passed. Stripe refunded; crypto settled.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}},"503":{"description":"Validation, service configuration, payment processing, or pass failure","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string"},"refund":{"type":"string"},"drafted_count":{"type":"number"},"rounds":{"type":"number"}},"required":["error"]}}}}}}}},"components":{"securitySchemes":{"payment":{"type":"http","scheme":"Payment","description":"MPP credential from the runtime WWW-Authenticate: Payment challenge."},"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"Legacy Base x402 credential."},"x402Legacy":{"type":"apiKey","in":"header","name":"X-PAYMENT"}}}}