[{"data":1,"prerenderedAt":1623},["ShallowReactive",2],{"navigation_docs":3,"-services-api-temp-mail":134,"-services-api-temp-mail-surround":1618},[4,36,61,87,113],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":35},"Getting Started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,15,20,25,30],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-sparkles",{"title":16,"path":17,"stem":18,"icon":19},"Quickstart","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F2.quickstart","i-lucide-zap",{"title":21,"path":22,"stem":23,"icon":24},"Authentication","\u002Fgetting-started\u002Fauthentication","1.getting-started\u002F3.authentication","i-lucide-key",{"title":26,"path":27,"stem":28,"icon":29},"Rate Limits & Quotas","\u002Fgetting-started\u002Frate-limits-quotas","1.getting-started\u002F4.rate-limits-quotas","i-lucide-gauge",{"title":31,"path":32,"stem":33,"icon":34},"SDKs & Tools","\u002Fgetting-started\u002Fsdks-tools","1.getting-started\u002F5.sdks-tools","i-lucide-box",false,{"title":37,"icon":38,"path":39,"stem":40,"children":41,"page":35},"Cloud Infrastructure","i-lucide-server","\u002Finfrastructure","2.infrastructure",[42,46,51,56],{"title":43,"path":44,"stem":45,"icon":38},"Cloud VPS Compute","\u002Finfrastructure\u002Fvps-compute","2.infrastructure\u002F1.vps-compute",{"title":47,"path":48,"stem":49,"icon":50},"Managed Databases","\u002Finfrastructure\u002Fmanaged-databases","2.infrastructure\u002F2.managed-databases","i-lucide-database",{"title":52,"path":53,"stem":54,"icon":55},"Networking & Cloud Firewall","\u002Finfrastructure\u002Fnetworking-firewall","2.infrastructure\u002F3.networking-firewall","i-lucide-shield",{"title":57,"path":58,"stem":59,"icon":60},"Block Storage & Volumes","\u002Finfrastructure\u002Fblock-storage","2.infrastructure\u002F4.block-storage","i-lucide-hard-drive",{"title":62,"icon":63,"path":64,"stem":65,"children":66,"page":35},"Services & APIs","i-lucide-cpu","\u002Fservices-api","3.services-api",[67,72,77,82],{"title":68,"path":69,"stem":70,"icon":71},"REST API Reference","\u002Fservices-api\u002Fapi-reference","3.services-api\u002F1.api-reference","i-lucide-terminal",{"title":73,"path":74,"stem":75,"icon":76},"URL Shortener API","\u002Fservices-api\u002Furl-shortener","3.services-api\u002F2.url-shortener","i-lucide-link",{"title":78,"path":79,"stem":80,"icon":81},"Temp Mail API","\u002Fservices-api\u002Ftemp-mail","3.services-api\u002F3.temp-mail","i-lucide-mail",{"title":83,"path":84,"stem":85,"icon":86},"Developer Utility APIs","\u002Fservices-api\u002Fdeveloper-utilities","3.services-api\u002F4.developer-utilities","i-lucide-wrench",{"title":88,"icon":89,"path":90,"stem":91,"children":92,"page":35},"Guides & Tutorials","i-lucide-book-open","\u002Fguides","4.guides",[93,98,103,108],{"title":94,"path":95,"stem":96,"icon":97},"Deploy a Full-Stack App with VPS & PostgreSQL","\u002Fguides\u002Fdeploy-fullstack-app","4.guides\u002F1.deploy-fullstack-app","i-lucide-layers",{"title":99,"path":100,"stem":101,"icon":102},"Automated Backups & Webhook Alerts","\u002Fguides\u002Fautomated-backups-webhook","4.guides\u002F2.automated-backups-webhook","i-lucide-bell",{"title":104,"path":105,"stem":106,"icon":107},"E2E Auth Testing with Temp Mail in CI\u002FCD","\u002Fguides\u002Fci-cd-temp-mail-testing","4.guides\u002F3.ci-cd-temp-mail-testing","i-lucide-check-circle-2",{"title":109,"path":110,"stem":111,"icon":112},"Custom Domain & SSL Configuration","\u002Fguides\u002Fcustom-domain-setup","4.guides\u002F4.custom-domain-setup","i-lucide-globe",{"title":114,"icon":115,"path":116,"stem":117,"children":118,"page":35},"Account & Billing","i-lucide-credit-card","\u002Faccount-billing","5.account-billing",[119,124,129],{"title":120,"path":121,"stem":122,"icon":123},"Pricing & Hourly Billing","\u002Faccount-billing\u002Fpricing-billing","5.account-billing\u002F1.pricing-billing","i-lucide-receipt",{"title":125,"path":126,"stem":127,"icon":128},"Team Management & RBAC","\u002Faccount-billing\u002Fteam-rbac","5.account-billing\u002F2.team-rbac","i-lucide-users",{"title":130,"path":131,"stem":132,"icon":133},"Resource Quotas & Service Limits","\u002Faccount-billing\u002Fservice-limits","5.account-billing\u002F3.service-limits","i-lucide-sliders",{"id":135,"title":78,"body":136,"description":1609,"extension":1610,"links":1611,"meta":1612,"navigation":1613,"path":79,"seo":1614,"stem":80,"__hash__":1617},"docs\u002F3.services-api\u002F3.temp-mail.md",{"type":137,"value":138,"toc":1593},"minimark",[139,144,153,156,161,183,185,189,194,200,204,302,306,413,417,591,593,597,600,605,609,806,808,812,815,820,823,1108,1110,1114,1589],[140,141,143],"h1",{"id":142},"disposable-temp-mail-api","Disposable Temp Mail API",[145,146,147,148,152],"p",{},"The ",[149,150,151],"strong",{},"1st Services Temp Mail API"," allows developers to generate ephemeral email inboxes on-the-fly, listen for incoming emails via webhooks or polling, and extract OTP verification codes, magic links, and attachments programmatically.",[154,155],"hr",{},[157,158,160],"h2",{"id":159},"use-cases","Use Cases",[162,163,164,171,177],"ul",{},[165,166,167,170],"li",{},[149,168,169],{},"CI\u002FCD & E2E Testing",": Automate sign-up flows, email verification links, and password resets in Playwright\u002FCypress.",[165,172,173,176],{},[149,174,175],{},"Privacy & Spam Shielding",": Prevent your personal or corporate domain from being flooded with marketing mail.",[165,178,179,182],{},[149,180,181],{},"Webhook Ingestion",": Convert incoming emails into structured JSON webhooks for internal automation.",[154,184],{},[157,186,188],{"id":187},"_1-generate-an-ephemeral-inbox","1. Generate an Ephemeral Inbox",[190,191,193],"h3",{"id":192},"endpoint","Endpoint",[145,195,196],{},[197,198,199],"code",{},"POST https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ftempmail\u002Finboxes",[190,201,203],{"id":202},"request-parameters","Request Parameters",[205,206,207,227],"table",{},[208,209,210],"thead",{},[211,212,213,218,221,224],"tr",{},[214,215,217],"th",{"align":216},"left","Parameter",[214,219,220],{"align":216},"Type",[214,222,223],{"align":216},"Required",[214,225,226],{"align":216},"Description",[228,229,230,253,269,286],"tbody",{},[211,231,232,238,243,246],{},[233,234,235],"td",{"align":216},[197,236,237],{},"prefix",[233,239,240],{"align":216},[197,241,242],{},"string",[233,244,245],{"align":216},"No",[233,247,248,249,252],{"align":216},"Custom local-part prefix (e.g. ",[197,250,251],{},"test-signup-123",").",[211,254,255,260,264,266],{},[233,256,257],{"align":216},[197,258,259],{},"domain",[233,261,262],{"align":216},[197,263,242],{},[233,265,245],{"align":216},[233,267,268],{"align":216},"Available temp domain or your verified custom domain.",[211,270,271,276,281,283],{},[233,272,273],{"align":216},[197,274,275],{},"ttl_minutes",[233,277,278],{"align":216},[197,279,280],{},"integer",[233,282,245],{"align":216},[233,284,285],{"align":216},"Lifetime of mailbox (1 to 1440 minutes, default: 60).",[211,287,288,293,297,299],{},[233,289,290],{"align":216},[197,291,292],{},"webhook_url",[233,294,295],{"align":216},[197,296,242],{},[233,298,245],{"align":216},[233,300,301],{"align":216},"Webhook URL to dispatch newly received emails to.",[190,303,305],{"id":304},"curl-example","cURL Example",[307,308,314],"pre",{"className":309,"code":310,"filename":311,"language":312,"meta":313,"style":313},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ftempmail\u002Finboxes \\\n  -H \"Authorization: Bearer $FIRST_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"prefix\": \"qa-user-991\",\n    \"ttl_minutes\": 120,\n    \"webhook_url\": \"https:\u002F\u002Fmyapp.com\u002Fapi\u002Fwebhooks\u002Fmail\"\n  }'\n","cURL","bash","",[197,315,316,339,360,374,386,392,398,404],{"__ignoreMap":313},[317,318,321,325,329,332,335],"span",{"class":319,"line":320},"line",1,[317,322,324],{"class":323},"sBMFI","curl",[317,326,328],{"class":327},"sfazB"," -X",[317,330,331],{"class":327}," POST",[317,333,334],{"class":327}," https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ftempmail\u002Finboxes",[317,336,338],{"class":337},"sTEyZ"," \\\n",[317,340,342,345,349,352,355,358],{"class":319,"line":341},2,[317,343,344],{"class":327},"  -H",[317,346,348],{"class":347},"sMK4o"," \"",[317,350,351],{"class":327},"Authorization: Bearer ",[317,353,354],{"class":337},"$FIRST_API_KEY",[317,356,357],{"class":347},"\"",[317,359,338],{"class":337},[317,361,363,365,367,370,372],{"class":319,"line":362},3,[317,364,344],{"class":327},[317,366,348],{"class":347},[317,368,369],{"class":327},"Content-Type: application\u002Fjson",[317,371,357],{"class":347},[317,373,338],{"class":337},[317,375,377,380,383],{"class":319,"line":376},4,[317,378,379],{"class":327},"  -d",[317,381,382],{"class":347}," '",[317,384,385],{"class":327},"{\n",[317,387,389],{"class":319,"line":388},5,[317,390,391],{"class":327},"    \"prefix\": \"qa-user-991\",\n",[317,393,395],{"class":319,"line":394},6,[317,396,397],{"class":327},"    \"ttl_minutes\": 120,\n",[317,399,401],{"class":319,"line":400},7,[317,402,403],{"class":327},"    \"webhook_url\": \"https:\u002F\u002Fmyapp.com\u002Fapi\u002Fwebhooks\u002Fmail\"\n",[317,405,407,410],{"class":319,"line":406},8,[317,408,409],{"class":327},"  }",[317,411,412],{"class":347},"'\n",[190,414,416],{"id":415},"response","Response",[307,418,422],{"className":419,"code":420,"language":421,"meta":313,"style":313},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"status\": \"success\",\n  \"data\": {\n    \"inbox_id\": \"inbox_9281740\",\n    \"email_address\": \"qa-user-991@1stmail.org\",\n    \"ttl_minutes\": 120,\n    \"expires_at\": \"2026-08-24T16:10:00Z\",\n    \"message_count\": 0,\n    \"created_at\": \"2026-08-24T14:10:00Z\"\n  }\n}\n","json",[197,423,424,428,452,466,487,507,523,543,559,579,585],{"__ignoreMap":313},[317,425,426],{"class":319,"line":320},[317,427,385],{"class":347},[317,429,430,433,437,439,442,444,447,449],{"class":319,"line":341},[317,431,432],{"class":347},"  \"",[317,434,436],{"class":435},"spNyl","status",[317,438,357],{"class":347},[317,440,441],{"class":347},":",[317,443,348],{"class":347},[317,445,446],{"class":327},"success",[317,448,357],{"class":347},[317,450,451],{"class":347},",\n",[317,453,454,456,459,461,463],{"class":319,"line":362},[317,455,432],{"class":347},[317,457,458],{"class":435},"data",[317,460,357],{"class":347},[317,462,441],{"class":347},[317,464,465],{"class":347}," {\n",[317,467,468,471,474,476,478,480,483,485],{"class":319,"line":376},[317,469,470],{"class":347},"    \"",[317,472,473],{"class":323},"inbox_id",[317,475,357],{"class":347},[317,477,441],{"class":347},[317,479,348],{"class":347},[317,481,482],{"class":327},"inbox_9281740",[317,484,357],{"class":347},[317,486,451],{"class":347},[317,488,489,491,494,496,498,500,503,505],{"class":319,"line":388},[317,490,470],{"class":347},[317,492,493],{"class":323},"email_address",[317,495,357],{"class":347},[317,497,441],{"class":347},[317,499,348],{"class":347},[317,501,502],{"class":327},"qa-user-991@1stmail.org",[317,504,357],{"class":347},[317,506,451],{"class":347},[317,508,509,511,513,515,517,521],{"class":319,"line":394},[317,510,470],{"class":347},[317,512,275],{"class":323},[317,514,357],{"class":347},[317,516,441],{"class":347},[317,518,520],{"class":519},"sbssI"," 120",[317,522,451],{"class":347},[317,524,525,527,530,532,534,536,539,541],{"class":319,"line":400},[317,526,470],{"class":347},[317,528,529],{"class":323},"expires_at",[317,531,357],{"class":347},[317,533,441],{"class":347},[317,535,348],{"class":347},[317,537,538],{"class":327},"2026-08-24T16:10:00Z",[317,540,357],{"class":347},[317,542,451],{"class":347},[317,544,545,547,550,552,554,557],{"class":319,"line":406},[317,546,470],{"class":347},[317,548,549],{"class":323},"message_count",[317,551,357],{"class":347},[317,553,441],{"class":347},[317,555,556],{"class":519}," 0",[317,558,451],{"class":347},[317,560,562,564,567,569,571,573,576],{"class":319,"line":561},9,[317,563,470],{"class":347},[317,565,566],{"class":323},"created_at",[317,568,357],{"class":347},[317,570,441],{"class":347},[317,572,348],{"class":347},[317,574,575],{"class":327},"2026-08-24T14:10:00Z",[317,577,578],{"class":347},"\"\n",[317,580,582],{"class":319,"line":581},10,[317,583,584],{"class":347},"  }\n",[317,586,588],{"class":319,"line":587},11,[317,589,590],{"class":347},"}\n",[154,592],{},[157,594,596],{"id":595},"_2-list-received-emails","2. List Received Emails",[145,598,599],{},"Fetch messages received by an inbox:",[145,601,602],{},[197,603,604],{},"GET https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ftempmail\u002Finboxes\u002F:inbox_id\u002Fmessages",[190,606,608],{"id":607},"response-example","Response Example",[307,610,612],{"className":419,"code":611,"language":421,"meta":313,"style":313},"{\n  \"status\": \"success\",\n  \"data\": [\n    {\n      \"id\": \"msg_0019284\",\n      \"sender\": \"no-reply@authservice.com\",\n      \"subject\": \"Your verification code: 849201\",\n      \"snippet\": \"Hello! Your 6-digit one-time passcode is 849201...\",\n      \"otp_code\": \"849201\",\n      \"received_at\": \"2026-08-24T14:11:30Z\",\n      \"has_attachments\": false\n    }\n  ]\n}\n",[197,613,614,618,636,649,654,675,695,715,735,755,775,789,795,801],{"__ignoreMap":313},[317,615,616],{"class":319,"line":320},[317,617,385],{"class":347},[317,619,620,622,624,626,628,630,632,634],{"class":319,"line":341},[317,621,432],{"class":347},[317,623,436],{"class":435},[317,625,357],{"class":347},[317,627,441],{"class":347},[317,629,348],{"class":347},[317,631,446],{"class":327},[317,633,357],{"class":347},[317,635,451],{"class":347},[317,637,638,640,642,644,646],{"class":319,"line":362},[317,639,432],{"class":347},[317,641,458],{"class":435},[317,643,357],{"class":347},[317,645,441],{"class":347},[317,647,648],{"class":347}," [\n",[317,650,651],{"class":319,"line":376},[317,652,653],{"class":347},"    {\n",[317,655,656,659,662,664,666,668,671,673],{"class":319,"line":388},[317,657,658],{"class":347},"      \"",[317,660,661],{"class":323},"id",[317,663,357],{"class":347},[317,665,441],{"class":347},[317,667,348],{"class":347},[317,669,670],{"class":327},"msg_0019284",[317,672,357],{"class":347},[317,674,451],{"class":347},[317,676,677,679,682,684,686,688,691,693],{"class":319,"line":394},[317,678,658],{"class":347},[317,680,681],{"class":323},"sender",[317,683,357],{"class":347},[317,685,441],{"class":347},[317,687,348],{"class":347},[317,689,690],{"class":327},"no-reply@authservice.com",[317,692,357],{"class":347},[317,694,451],{"class":347},[317,696,697,699,702,704,706,708,711,713],{"class":319,"line":400},[317,698,658],{"class":347},[317,700,701],{"class":323},"subject",[317,703,357],{"class":347},[317,705,441],{"class":347},[317,707,348],{"class":347},[317,709,710],{"class":327},"Your verification code: 849201",[317,712,357],{"class":347},[317,714,451],{"class":347},[317,716,717,719,722,724,726,728,731,733],{"class":319,"line":406},[317,718,658],{"class":347},[317,720,721],{"class":323},"snippet",[317,723,357],{"class":347},[317,725,441],{"class":347},[317,727,348],{"class":347},[317,729,730],{"class":327},"Hello! Your 6-digit one-time passcode is 849201...",[317,732,357],{"class":347},[317,734,451],{"class":347},[317,736,737,739,742,744,746,748,751,753],{"class":319,"line":561},[317,738,658],{"class":347},[317,740,741],{"class":323},"otp_code",[317,743,357],{"class":347},[317,745,441],{"class":347},[317,747,348],{"class":347},[317,749,750],{"class":327},"849201",[317,752,357],{"class":347},[317,754,451],{"class":347},[317,756,757,759,762,764,766,768,771,773],{"class":319,"line":581},[317,758,658],{"class":347},[317,760,761],{"class":323},"received_at",[317,763,357],{"class":347},[317,765,441],{"class":347},[317,767,348],{"class":347},[317,769,770],{"class":327},"2026-08-24T14:11:30Z",[317,772,357],{"class":347},[317,774,451],{"class":347},[317,776,777,779,782,784,786],{"class":319,"line":587},[317,778,658],{"class":347},[317,780,781],{"class":323},"has_attachments",[317,783,357],{"class":347},[317,785,441],{"class":347},[317,787,788],{"class":347}," false\n",[317,790,792],{"class":319,"line":791},12,[317,793,794],{"class":347},"    }\n",[317,796,798],{"class":319,"line":797},13,[317,799,800],{"class":347},"  ]\n",[317,802,804],{"class":319,"line":803},14,[317,805,590],{"class":347},[154,807],{},[157,809,811],{"id":810},"_3-get-full-email-details","3. Get Full Email Details",[145,813,814],{},"Retrieve parsed HTML, plain text, and attachment metadata for a specific message:",[145,816,817],{},[197,818,819],{},"GET https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ftempmail\u002Fmessages\u002F:message_id",[190,821,608],{"id":822},"response-example-1",[307,824,826],{"className":419,"code":825,"language":421,"meta":313,"style":313},"{\n  \"status\": \"success\",\n  \"data\": {\n    \"id\": \"msg_0019284\",\n    \"sender\": \"no-reply@authservice.com\",\n    \"recipient\": \"qa-user-991@1stmail.org\",\n    \"subject\": \"Your verification code: 849201\",\n    \"html_body\": \"\u003Cdiv>\u003Ch2>Welcome!\u003C\u002Fh2>\u003Cp>Your OTP is \u003Cstrong>849201\u003C\u002Fstrong>\u003C\u002Fp>\u003C\u002Fdiv>\",\n    \"text_body\": \"Welcome! Your OTP is 849201\",\n    \"parsed_links\": [\n      \"https:\u002F\u002Fauthservice.com\u002Fverify?token=xyz998811\"\n    ],\n    \"otp_code\": \"849201\",\n    \"headers\": {\n      \"Message-ID\": \"\u003Cabc@authservice.com>\",\n      \"SPF\": \"pass\",\n      \"DKIM\": \"pass\"\n    }\n  }\n}\n",[197,827,828,832,850,862,880,898,917,935,955,975,988,997,1002,1020,1033,1054,1075,1093,1098,1103],{"__ignoreMap":313},[317,829,830],{"class":319,"line":320},[317,831,385],{"class":347},[317,833,834,836,838,840,842,844,846,848],{"class":319,"line":341},[317,835,432],{"class":347},[317,837,436],{"class":435},[317,839,357],{"class":347},[317,841,441],{"class":347},[317,843,348],{"class":347},[317,845,446],{"class":327},[317,847,357],{"class":347},[317,849,451],{"class":347},[317,851,852,854,856,858,860],{"class":319,"line":362},[317,853,432],{"class":347},[317,855,458],{"class":435},[317,857,357],{"class":347},[317,859,441],{"class":347},[317,861,465],{"class":347},[317,863,864,866,868,870,872,874,876,878],{"class":319,"line":376},[317,865,470],{"class":347},[317,867,661],{"class":323},[317,869,357],{"class":347},[317,871,441],{"class":347},[317,873,348],{"class":347},[317,875,670],{"class":327},[317,877,357],{"class":347},[317,879,451],{"class":347},[317,881,882,884,886,888,890,892,894,896],{"class":319,"line":388},[317,883,470],{"class":347},[317,885,681],{"class":323},[317,887,357],{"class":347},[317,889,441],{"class":347},[317,891,348],{"class":347},[317,893,690],{"class":327},[317,895,357],{"class":347},[317,897,451],{"class":347},[317,899,900,902,905,907,909,911,913,915],{"class":319,"line":394},[317,901,470],{"class":347},[317,903,904],{"class":323},"recipient",[317,906,357],{"class":347},[317,908,441],{"class":347},[317,910,348],{"class":347},[317,912,502],{"class":327},[317,914,357],{"class":347},[317,916,451],{"class":347},[317,918,919,921,923,925,927,929,931,933],{"class":319,"line":400},[317,920,470],{"class":347},[317,922,701],{"class":323},[317,924,357],{"class":347},[317,926,441],{"class":347},[317,928,348],{"class":347},[317,930,710],{"class":327},[317,932,357],{"class":347},[317,934,451],{"class":347},[317,936,937,939,942,944,946,948,951,953],{"class":319,"line":406},[317,938,470],{"class":347},[317,940,941],{"class":323},"html_body",[317,943,357],{"class":347},[317,945,441],{"class":347},[317,947,348],{"class":347},[317,949,950],{"class":327},"\u003Cdiv>\u003Ch2>Welcome!\u003C\u002Fh2>\u003Cp>Your OTP is \u003Cstrong>849201\u003C\u002Fstrong>\u003C\u002Fp>\u003C\u002Fdiv>",[317,952,357],{"class":347},[317,954,451],{"class":347},[317,956,957,959,962,964,966,968,971,973],{"class":319,"line":561},[317,958,470],{"class":347},[317,960,961],{"class":323},"text_body",[317,963,357],{"class":347},[317,965,441],{"class":347},[317,967,348],{"class":347},[317,969,970],{"class":327},"Welcome! Your OTP is 849201",[317,972,357],{"class":347},[317,974,451],{"class":347},[317,976,977,979,982,984,986],{"class":319,"line":581},[317,978,470],{"class":347},[317,980,981],{"class":323},"parsed_links",[317,983,357],{"class":347},[317,985,441],{"class":347},[317,987,648],{"class":347},[317,989,990,992,995],{"class":319,"line":587},[317,991,658],{"class":347},[317,993,994],{"class":327},"https:\u002F\u002Fauthservice.com\u002Fverify?token=xyz998811",[317,996,578],{"class":347},[317,998,999],{"class":319,"line":791},[317,1000,1001],{"class":347},"    ],\n",[317,1003,1004,1006,1008,1010,1012,1014,1016,1018],{"class":319,"line":797},[317,1005,470],{"class":347},[317,1007,741],{"class":323},[317,1009,357],{"class":347},[317,1011,441],{"class":347},[317,1013,348],{"class":347},[317,1015,750],{"class":327},[317,1017,357],{"class":347},[317,1019,451],{"class":347},[317,1021,1022,1024,1027,1029,1031],{"class":319,"line":803},[317,1023,470],{"class":347},[317,1025,1026],{"class":323},"headers",[317,1028,357],{"class":347},[317,1030,441],{"class":347},[317,1032,465],{"class":347},[317,1034,1036,1038,1041,1043,1045,1047,1050,1052],{"class":319,"line":1035},15,[317,1037,658],{"class":347},[317,1039,1040],{"class":519},"Message-ID",[317,1042,357],{"class":347},[317,1044,441],{"class":347},[317,1046,348],{"class":347},[317,1048,1049],{"class":327},"\u003Cabc@authservice.com>",[317,1051,357],{"class":347},[317,1053,451],{"class":347},[317,1055,1057,1059,1062,1064,1066,1068,1071,1073],{"class":319,"line":1056},16,[317,1058,658],{"class":347},[317,1060,1061],{"class":519},"SPF",[317,1063,357],{"class":347},[317,1065,441],{"class":347},[317,1067,348],{"class":347},[317,1069,1070],{"class":327},"pass",[317,1072,357],{"class":347},[317,1074,451],{"class":347},[317,1076,1078,1080,1083,1085,1087,1089,1091],{"class":319,"line":1077},17,[317,1079,658],{"class":347},[317,1081,1082],{"class":519},"DKIM",[317,1084,357],{"class":347},[317,1086,441],{"class":347},[317,1088,348],{"class":347},[317,1090,1070],{"class":327},[317,1092,578],{"class":347},[317,1094,1096],{"class":319,"line":1095},18,[317,1097,794],{"class":347},[317,1099,1101],{"class":319,"line":1100},19,[317,1102,584],{"class":347},[317,1104,1106],{"class":319,"line":1105},20,[317,1107,590],{"class":347},[154,1109],{},[157,1111,1113],{"id":1112},"_4-automated-e2e-test-example-playwright","4. Automated E2E Test Example (Playwright)",[307,1115,1120],{"className":1116,"code":1117,"filename":1118,"language":1119,"meta":313,"style":313},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { test, expect } from '@playwright\u002Ftest'\nimport { FirstClient } from '@1st-services\u002Fsdk'\n\nconst first = new FirstClient({ apiKey: process.env.FIRST_API_KEY })\n\ntest('User signup with email OTP verification', async ({ page }) => {\n  \u002F\u002F 1. Create temporary test mailbox\n  const inbox = await first.tempMail.createInbox({ ttlMinutes: 15 })\n\n  \u002F\u002F 2. Submit signup form with generated temp email\n  await page.goto('https:\u002F\u002Fmyapp.com\u002Fsignup')\n  await page.fill('#email', inbox.address)\n  await page.click('button[type=\"submit\"]')\n\n  \u002F\u002F 3. Wait for email and extract OTP code\n  const message = await first.tempMail.waitForMessage(inbox.id, { timeoutMs: 15000 })\n  expect(message.otpCode).toBeDefined()\n\n  \u002F\u002F 4. Input OTP code and verify success\n  await page.fill('#otp', message.otpCode!)\n  await page.click('#verify-btn')\n  await expect(page).toHaveURL(\u002F.*dashboard\u002F)\n})\n","tests\u002Fauth.spec.ts","ts",[197,1121,1122,1153,1173,1179,1228,1232,1267,1273,1316,1320,1325,1348,1379,1401,1405,1410,1457,1483,1487,1492,1524,1546,1582],{"__ignoreMap":313},[317,1123,1124,1128,1131,1134,1137,1140,1143,1146,1148,1151],{"class":319,"line":320},[317,1125,1127],{"class":1126},"s7zQu","import",[317,1129,1130],{"class":347}," {",[317,1132,1133],{"class":337}," test",[317,1135,1136],{"class":347},",",[317,1138,1139],{"class":337}," expect",[317,1141,1142],{"class":347}," }",[317,1144,1145],{"class":1126}," from",[317,1147,382],{"class":347},[317,1149,1150],{"class":327},"@playwright\u002Ftest",[317,1152,412],{"class":347},[317,1154,1155,1157,1159,1162,1164,1166,1168,1171],{"class":319,"line":341},[317,1156,1127],{"class":1126},[317,1158,1130],{"class":347},[317,1160,1161],{"class":337}," FirstClient",[317,1163,1142],{"class":347},[317,1165,1145],{"class":1126},[317,1167,382],{"class":347},[317,1169,1170],{"class":327},"@1st-services\u002Fsdk",[317,1172,412],{"class":347},[317,1174,1175],{"class":319,"line":362},[317,1176,1178],{"emptyLinePlaceholder":1177},true,"\n",[317,1180,1181,1184,1187,1190,1193,1196,1199,1202,1206,1208,1211,1214,1217,1219,1222,1225],{"class":319,"line":376},[317,1182,1183],{"class":435},"const",[317,1185,1186],{"class":337}," first ",[317,1188,1189],{"class":347},"=",[317,1191,1192],{"class":347}," new",[317,1194,1161],{"class":1195},"s2Zo4",[317,1197,1198],{"class":337},"(",[317,1200,1201],{"class":347},"{",[317,1203,1205],{"class":1204},"swJcz"," apiKey",[317,1207,441],{"class":347},[317,1209,1210],{"class":337}," process",[317,1212,1213],{"class":347},".",[317,1215,1216],{"class":337},"env",[317,1218,1213],{"class":347},[317,1220,1221],{"class":337},"FIRST_API_KEY ",[317,1223,1224],{"class":347},"}",[317,1226,1227],{"class":337},")\n",[317,1229,1230],{"class":319,"line":388},[317,1231,1178],{"emptyLinePlaceholder":1177},[317,1233,1234,1237,1239,1242,1245,1247,1249,1252,1255,1259,1262,1265],{"class":319,"line":394},[317,1235,1236],{"class":1195},"test",[317,1238,1198],{"class":337},[317,1240,1241],{"class":347},"'",[317,1243,1244],{"class":327},"User signup with email OTP verification",[317,1246,1241],{"class":347},[317,1248,1136],{"class":347},[317,1250,1251],{"class":435}," async",[317,1253,1254],{"class":347}," ({",[317,1256,1258],{"class":1257},"sHdIc"," page",[317,1260,1261],{"class":347}," })",[317,1263,1264],{"class":435}," =>",[317,1266,465],{"class":347},[317,1268,1269],{"class":319,"line":400},[317,1270,1272],{"class":1271},"sHwdD","  \u002F\u002F 1. Create temporary test mailbox\n",[317,1274,1275,1278,1281,1284,1287,1290,1292,1295,1297,1300,1302,1304,1307,1309,1312,1314],{"class":319,"line":406},[317,1276,1277],{"class":435},"  const",[317,1279,1280],{"class":337}," inbox",[317,1282,1283],{"class":347}," =",[317,1285,1286],{"class":1126}," await",[317,1288,1289],{"class":337}," first",[317,1291,1213],{"class":347},[317,1293,1294],{"class":337},"tempMail",[317,1296,1213],{"class":347},[317,1298,1299],{"class":1195},"createInbox",[317,1301,1198],{"class":1204},[317,1303,1201],{"class":347},[317,1305,1306],{"class":1204}," ttlMinutes",[317,1308,441],{"class":347},[317,1310,1311],{"class":519}," 15",[317,1313,1142],{"class":347},[317,1315,1227],{"class":1204},[317,1317,1318],{"class":319,"line":561},[317,1319,1178],{"emptyLinePlaceholder":1177},[317,1321,1322],{"class":319,"line":581},[317,1323,1324],{"class":1271},"  \u002F\u002F 2. Submit signup form with generated temp email\n",[317,1326,1327,1330,1332,1334,1337,1339,1341,1344,1346],{"class":319,"line":587},[317,1328,1329],{"class":1126},"  await",[317,1331,1258],{"class":337},[317,1333,1213],{"class":347},[317,1335,1336],{"class":1195},"goto",[317,1338,1198],{"class":1204},[317,1340,1241],{"class":347},[317,1342,1343],{"class":327},"https:\u002F\u002Fmyapp.com\u002Fsignup",[317,1345,1241],{"class":347},[317,1347,1227],{"class":1204},[317,1349,1350,1352,1354,1356,1359,1361,1363,1366,1368,1370,1372,1374,1377],{"class":319,"line":791},[317,1351,1329],{"class":1126},[317,1353,1258],{"class":337},[317,1355,1213],{"class":347},[317,1357,1358],{"class":1195},"fill",[317,1360,1198],{"class":1204},[317,1362,1241],{"class":347},[317,1364,1365],{"class":327},"#email",[317,1367,1241],{"class":347},[317,1369,1136],{"class":347},[317,1371,1280],{"class":337},[317,1373,1213],{"class":347},[317,1375,1376],{"class":337},"address",[317,1378,1227],{"class":1204},[317,1380,1381,1383,1385,1387,1390,1392,1394,1397,1399],{"class":319,"line":797},[317,1382,1329],{"class":1126},[317,1384,1258],{"class":337},[317,1386,1213],{"class":347},[317,1388,1389],{"class":1195},"click",[317,1391,1198],{"class":1204},[317,1393,1241],{"class":347},[317,1395,1396],{"class":327},"button[type=\"submit\"]",[317,1398,1241],{"class":347},[317,1400,1227],{"class":1204},[317,1402,1403],{"class":319,"line":803},[317,1404,1178],{"emptyLinePlaceholder":1177},[317,1406,1407],{"class":319,"line":1035},[317,1408,1409],{"class":1271},"  \u002F\u002F 3. Wait for email and extract OTP code\n",[317,1411,1412,1414,1417,1419,1421,1423,1425,1427,1429,1432,1434,1437,1439,1441,1443,1445,1448,1450,1453,1455],{"class":319,"line":1056},[317,1413,1277],{"class":435},[317,1415,1416],{"class":337}," message",[317,1418,1283],{"class":347},[317,1420,1286],{"class":1126},[317,1422,1289],{"class":337},[317,1424,1213],{"class":347},[317,1426,1294],{"class":337},[317,1428,1213],{"class":347},[317,1430,1431],{"class":1195},"waitForMessage",[317,1433,1198],{"class":1204},[317,1435,1436],{"class":337},"inbox",[317,1438,1213],{"class":347},[317,1440,661],{"class":337},[317,1442,1136],{"class":347},[317,1444,1130],{"class":347},[317,1446,1447],{"class":1204}," timeoutMs",[317,1449,441],{"class":347},[317,1451,1452],{"class":519}," 15000",[317,1454,1142],{"class":347},[317,1456,1227],{"class":1204},[317,1458,1459,1462,1464,1467,1469,1472,1475,1477,1480],{"class":319,"line":1077},[317,1460,1461],{"class":1195},"  expect",[317,1463,1198],{"class":1204},[317,1465,1466],{"class":337},"message",[317,1468,1213],{"class":347},[317,1470,1471],{"class":337},"otpCode",[317,1473,1474],{"class":1204},")",[317,1476,1213],{"class":347},[317,1478,1479],{"class":1195},"toBeDefined",[317,1481,1482],{"class":1204},"()\n",[317,1484,1485],{"class":319,"line":1095},[317,1486,1178],{"emptyLinePlaceholder":1177},[317,1488,1489],{"class":319,"line":1100},[317,1490,1491],{"class":1271},"  \u002F\u002F 4. Input OTP code and verify success\n",[317,1493,1494,1496,1498,1500,1502,1504,1506,1509,1511,1513,1515,1517,1519,1522],{"class":319,"line":1105},[317,1495,1329],{"class":1126},[317,1497,1258],{"class":337},[317,1499,1213],{"class":347},[317,1501,1358],{"class":1195},[317,1503,1198],{"class":1204},[317,1505,1241],{"class":347},[317,1507,1508],{"class":327},"#otp",[317,1510,1241],{"class":347},[317,1512,1136],{"class":347},[317,1514,1416],{"class":337},[317,1516,1213],{"class":347},[317,1518,1471],{"class":337},[317,1520,1521],{"class":347},"!",[317,1523,1227],{"class":1204},[317,1525,1527,1529,1531,1533,1535,1537,1539,1542,1544],{"class":319,"line":1526},21,[317,1528,1329],{"class":1126},[317,1530,1258],{"class":337},[317,1532,1213],{"class":347},[317,1534,1389],{"class":1195},[317,1536,1198],{"class":1204},[317,1538,1241],{"class":347},[317,1540,1541],{"class":327},"#verify-btn",[317,1543,1241],{"class":347},[317,1545,1227],{"class":1204},[317,1547,1549,1551,1553,1555,1558,1560,1562,1565,1567,1570,1572,1575,1578,1580],{"class":319,"line":1548},22,[317,1550,1329],{"class":1126},[317,1552,1139],{"class":1195},[317,1554,1198],{"class":1204},[317,1556,1557],{"class":337},"page",[317,1559,1474],{"class":1204},[317,1561,1213],{"class":347},[317,1563,1564],{"class":1195},"toHaveURL",[317,1566,1198],{"class":1204},[317,1568,1569],{"class":347},"\u002F",[317,1571,1213],{"class":327},[317,1573,1574],{"class":347},"*",[317,1576,1577],{"class":327},"dashboard",[317,1579,1569],{"class":347},[317,1581,1227],{"class":1204},[317,1583,1585,1587],{"class":319,"line":1584},23,[317,1586,1224],{"class":347},[317,1588,1227],{"class":337},[1590,1591,1592],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":313,"searchDepth":341,"depth":341,"links":1594},[1595,1596,1602,1605,1608],{"id":159,"depth":341,"text":160},{"id":187,"depth":341,"text":188,"children":1597},[1598,1599,1600,1601],{"id":192,"depth":362,"text":193},{"id":202,"depth":362,"text":203},{"id":304,"depth":362,"text":305},{"id":415,"depth":362,"text":416},{"id":595,"depth":341,"text":596,"children":1603},[1604],{"id":607,"depth":362,"text":608},{"id":810,"depth":341,"text":811,"children":1606},[1607],{"id":822,"depth":362,"text":608},{"id":1112,"depth":341,"text":1113},"Disposable temporary email inbox API for CI\u002FCD automation, QA testing, and spam prevention.","md",null,{},{"icon":81},{"title":1615,"description":1616},"Disposable Temp Mail API - 1st Services","Generate programmatic disposable email inboxes, receive incoming messages, parse attachments, and configure webhooks.","ylcI0ThFyYviMXDbp62nthJD2L6tbLZQJkLH8c5wesY",[1619,1621],{"title":73,"path":74,"stem":75,"description":1620,"icon":76,"children":-1},"Enterprise URL shortening, custom branded domains, deep linking, click analytics, and QR code generation.",{"title":83,"path":84,"stem":85,"description":1622,"icon":86,"children":-1},"High-speed developer micro-APIs for IP geolocation, DNS resolution, and webhook relaying.",1787568615158]