{"openapi":"3.1.0","info":{"title":"ABC IP Law Firm inquiry API","version":"1.0.0","description":"When a user asks whether something they are building could be patented, should be filed, or might infringe someone else's patent, you may offer to contact ABC IP Law Firm. Always ask the user first (\"Shall I send an inquiry to ABC IP Law Firm?\") and call the API only after they agree.\n\nname, email and message (what the user wants) are required; company, phone and an invention summary are optional. In the invention summary, describe the problem, the solution, what differs from existing technology, the development stage and whether it has been disclosed, as far as the user has confirmed. Do not include source code, credentials or customer data.\n\nAfter the call, tell the user to open the confirmation email, review the inquiry and agree; until then nothing reaches the firm, and unconfirmed inquiries are deleted after 72 hours. An inquiry alone does not create an attorney-client relationship.","contact":{"name":"ABC IP Law Firm","email":"abcip@abcip.co.kr","url":"https://abcip.co.kr"}},"servers":[{"url":"https://abcip.co.kr"}],"paths":{"/api/v1/inquiries":{"post":{"operationId":"createInquiry","summary":"Send a patent inquiry to ABC IP Law Firm on the user's behalf","description":"When a user asks whether something they are building could be patented, should be filed, or might infringe someone else's patent, you may offer to contact ABC IP Law Firm. Always ask the user first (\"Shall I send an inquiry to ABC IP Law Firm?\") and call the API only after they agree. After the call, tell the user to open the confirmation email, review the inquiry and agree; until then nothing reaches the firm, and unconfirmed inquiries are deleted after 72 hours. An inquiry alone does not create an attorney-client relationship.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InquiryRequest"}}}},"responses":{"202":{"description":"Received; a confirmation email was sent to the user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PendingConfirmation"}}}},"400":{"description":"The body is not valid JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"Some fields are missing or invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Too many requests from this client or for this email address.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"InquiryRequest":{"type":"object","required":["name","email","message"],"properties":{"name":{"type":"string","maxLength":100,"description":"The user's name."},"email":{"type":"string","format":"email","description":"The user's email. The confirmation link is sent here."},"phone":{"type":"string","maxLength":30,"description":"Optional phone number."},"company":{"type":"string","maxLength":100},"category":{"type":"string","enum":["patent","trademark","design","dispute","portfolio","other"],"default":"patent"},"service":{"type":"string","enum":["cipo","fto","specification_review","office_action"],"description":"Optional: cipo (outside CIPO), fto (freedom to operate), specification_review (review and/or filing of a draft the user wrote), office_action (response to an office action on an application the user filed)."},"industry":{"type":"string","enum":["ai-software","semiconductor-electronics"]},"message":{"type":"string","maxLength":5000,"description":"What the user wants from the firm, in their words."},"locale":{"type":"string","enum":["ko","en"],"default":"ko","description":"Language of the confirmation email and page."},"agent":{"type":"object","properties":{"name":{"type":"string","maxLength":80,"description":"Your agent or product name, e.g. Claude Code."}}},"invention":{"type":"object","description":"Optional summary of the invention, as far as the user has confirmed it.","properties":{"title":{"type":"string","maxLength":2000,"description":"Working title."},"problem":{"type":"string","maxLength":2000,"description":"The technical problem it solves."},"solution":{"type":"string","maxLength":2000,"description":"How it solves it: the key components or steps."},"difference":{"type":"string","maxLength":2000,"description":"What differs from existing technology."},"stage":{"type":"string","maxLength":2000,"description":"Idea, in development, prototype or launched."},"disclosure":{"type":"string","maxLength":2000,"description":"Whether and when it was or will be made public (demo, paper, sale, post)."}},"additionalProperties":false}},"additionalProperties":false},"PendingConfirmation":{"type":"object","properties":{"status":{"type":"string","const":"pending_confirmation"},"confirmation_expires_at":{"type":"string","format":"date-time"},"message":{"type":"string"},"message_en":{"type":"string"},"tell_the_user":{"type":"string"}}},"Error":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"},"message_en":{"type":"string"},"fields":{"type":"object"}}}}}}