{"openapi":"3.0.3","info":{"title":"Buildspace API","version":"v1","description":"REST API for Buildspace applications and ecosystem reporting. Protected routes require a Buildspace-local session token or a scoped machine credential."},"servers":[{"url":"https://api-buildspace.bio.xyz/api/v1","description":"Current deployment"}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Buildspace-local session token from POST /auth/authenticate. Machine consumers send their credential secret in the X-Buildspace-Api-Token header instead."}},"schemas":{"applicationDocumentsResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"type":{"type":"string","enum":["litepaper","pitch_deck","documentation","api_spec","whitepaper"]},"visibility":{"type":"string","enum":["public","confidential"]},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"mimeType":{"anyOf":[{"type":"string"},{"type":"null"}]},"sizeBytes":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["id","type","visibility","url","mimeType","sizeBytes","createdAt","updatedAt"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"applicationMutationResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"message":{"type":"string"},"recordId":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["success","message"],"additionalProperties":false},"molabsOwnedLabsResponseSchema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/molabsOwnedLabSchema"}}},"required":["data"]},"molabsSetupBodySchema":{"type":"object","properties":{"oclId":{"$ref":"#/components/schemas/oclIdSchema"},"walletAddress":{"$ref":"#/components/schemas/molabsWalletAddressSchema"},"messageSignature":{"type":"string","minLength":1}},"required":["oclId","walletAddress","messageSignature"]},"openlabsApplicationAnchorRequestSchema":{"type":"object","properties":{"openlabs_project_id":{"type":"string","format":"uuid","nullable":true}}},"previewLinkResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"expires_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["url","expires_at"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"applicationCurrentMonthlyReportResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"current_report":{"type":"object","properties":{"period_month":{"type":"string"},"period_label":{"type":"string"},"due_at":{"type":"string"},"is_past_due":{"type":"boolean"},"report":{"$ref":"#/components/schemas/applicationReportingReportSchema"}},"required":["period_month","period_label","due_at","is_past_due","report"],"nullable":true}}}},"required":["success","data"]},"applicationReportResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"$ref":"#/components/schemas/applicationReportingReportSchema"}},"required":["success","data"]},"applicationReportsListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"$ref":"#/components/schemas/applicationReportingReportSchema"}}},"required":["success","data"]},"applicationRoadmapItemStatusBodySchema":{"type":"object","properties":{"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["status"],"additionalProperties":false},"applicationRoadmapItemResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"$ref":"#/components/schemas/applicationRoadmapItemSchema"}},"required":["success","data"]},"applicationRoadmapItemsResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"$ref":"#/components/schemas/applicationRoadmapItemSchema"}}},"required":["success","data"]},"applicationRoadmapItemCreateBodySchema":{"type":"object","properties":{"title":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["title","description","category","status","date"],"additionalProperties":false},"applicationRoleResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"application_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"role":{"anyOf":[{"type":"string","enum":["projectLead","editor","viewer"]},{"type":"null"}]}},"required":["application_id","role"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"fullApplicationResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string"},"category":{"anyOf":[{"type":"string","enum":["Brain Longevity","Aging","Mental Health","Women's Health","Oncology","Metabolic Health","Microbiome","Immunology","Cardiovascular","Respiratory","Diagnostics","Materials","Neurodegeneration","COVID","Cryopreservation","Genomics Research","Gut Health","Hair Loss","Longevity","Men's Health","Nootropics","Peptides","Pediatrics","Psychedelics","Quantum Biology","Rare Diseases","Spine Health","Synthetic Biology","Other"]},{"type":"null"}]},"topic":{"type":"string","enum":["ai-machine-learning","biology-life-sciences","chemistry-materials","earth-climate-science","engineering-robotics","mathematics-computer-science","medicine-health","neuroscience-brain","physics-astronomy","social-behavioral-sciences","general-science"]},"tags":{"type":"array","items":{"type":"string","enum":["aging","longevity","oncology","womens-health","mens-health","pediatrics","cardiovascular","respiratory","metabolic-health","immunology","diagnostics","microbiome","gut-health","hair-loss","spine-health","rare-diseases","covid","peptides","pharmacogenomics","mental-health","neurodegeneration","nootropics","brain-longevity","psychedelics","synthetic-biology","genomics-research","cryopreservation","quantum-biology","marine-biology","ai-security","climate-active-tech"]}},"project_type":{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},"description":{"type":"string","minLength":1,"maxLength":500},"state":{"anyOf":[{"type":"string","enum":["building","pending_launch","upcoming","launching","failed","live","funded","trading"]},{"type":"null"}]},"decision_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"final_decision":{"anyOf":[{"type":"string","enum":["submitted","accepted","rejected","withdrawn"]},{"type":"null"}]},"lead_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"type":"string"},"github_url":{"anyOf":[{},{"type":"null"}]},"google_scholar_url":{"anyOf":[{},{"type":"null"}]},"discord_url":{"anyOf":[{},{"type":"null"}]},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"telegram_url":{"anyOf":[{},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]},"pitch_deck_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"prototype_url":{"anyOf":[{},{"type":"null"}]},"whitepaper_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_solution_edge":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_frontier":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_problem":{"anyOf":[{"type":"string"},{"type":"null"}]},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"bio_launchpad":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_hypothesis":{"anyOf":[{"type":"object","properties":{"stats":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"}},"required":["value","label"],"additionalProperties":false}},"bulletPoints":{"maxItems":50,"type":"array","items":{"type":"string"}},"statement":{"type":"string"},"marketDocuments":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["litepaper","pitch_deck","documentation","api_spec","whitepaper"]},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false}},"description":{}},"additionalProperties":true},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"title_image":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"type":"string","minLength":2,"maxLength":8},"tokenomics":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"track":{"anyOf":[{"type":"string","enum":["sandbox","curated","featured"]},{"type":"null"}]},"openlabs_project_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"launch_parameters":{"type":"object","properties":{"dao_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"dao_page_url":{"anyOf":[{},{"type":"null"}]},"dao_treasury_wallet_address":{"anyOf":[{"type":"string"},{"type":"null","const":null}]},"ip_nft_url":{"anyOf":[{},{"type":"null"}]},"ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]},"lab_shortname":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"multi_sig_wallet_address":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"chain":{"type":"string","enum":["ETH","BASE","SOL"]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["chain","address"],"additionalProperties":false}},{"type":"null"}]},"fdv_target":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"advisors_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"bio_treasury_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"ignition_sale_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"lp_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"milestone_threshold_fdv":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reserve_liquidity_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_immediate_amount":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_member_allocation":{"anyOf":[{"maxItems":10,"type":"array","items":{"type":"object","properties":{"address":{"type":"string","minLength":1},"percent":{"type":"number","minimum":0,"maximum":1}},"required":["address","percent"],"additionalProperties":false}},{"type":"null"}]},"total_supply":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"treasury_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"vebio_airdrop_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]}},"additionalProperties":false},"molabs_setup":{"type":"object","properties":{"pending_ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]}},"additionalProperties":false},"recommended_reads":{"maxItems":9,"type":"array","items":{"type":"object","properties":{"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"title":{"type":"string"},"url":{"anyOf":[{},{"type":"null"}]}},"required":["title"],"additionalProperties":false}},"roadmap_items":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_completed":{"type":"boolean"},"order":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["title","date"],"additionalProperties":false}},"team_members":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"bio":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"credentials":{"type":"object","additionalProperties":true},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_lead":{"type":"boolean"},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"name":{"type":"string"},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]}},"required":["name"],"additionalProperties":false}}},"required":["project_name","project_type","description","email"],"additionalProperties":false},"validationWarnings":{"type":"array","items":{"type":"string"}}},"required":["success","data"],"additionalProperties":false},"fullApplicationSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string"},"category":{"anyOf":[{"type":"string","enum":["Brain Longevity","Aging","Mental Health","Women's Health","Oncology","Metabolic Health","Microbiome","Immunology","Cardiovascular","Respiratory","Diagnostics","Materials","Neurodegeneration","COVID","Cryopreservation","Genomics Research","Gut Health","Hair Loss","Longevity","Men's Health","Nootropics","Peptides","Pediatrics","Psychedelics","Quantum Biology","Rare Diseases","Spine Health","Synthetic Biology","Other"]},{"type":"null"}]},"topic":{"type":"string","enum":["ai-machine-learning","biology-life-sciences","chemistry-materials","earth-climate-science","engineering-robotics","mathematics-computer-science","medicine-health","neuroscience-brain","physics-astronomy","social-behavioral-sciences","general-science"]},"tags":{"type":"array","items":{"type":"string","enum":["aging","longevity","oncology","womens-health","mens-health","pediatrics","cardiovascular","respiratory","metabolic-health","immunology","diagnostics","microbiome","gut-health","hair-loss","spine-health","rare-diseases","covid","peptides","pharmacogenomics","mental-health","neurodegeneration","nootropics","brain-longevity","psychedelics","synthetic-biology","genomics-research","cryopreservation","quantum-biology","marine-biology","ai-security","climate-active-tech"]}},"project_type":{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},"description":{"type":"string","minLength":1,"maxLength":500},"submitted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"lead_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"type":"string"},"github_url":{"anyOf":[{},{"type":"null"}]},"google_scholar_url":{"anyOf":[{},{"type":"null"}]},"discord_url":{"anyOf":[{},{"type":"null"}]},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"telegram_url":{"anyOf":[{},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]},"pitch_deck_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"prototype_url":{"anyOf":[{},{"type":"null"}]},"whitepaper_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_solution_edge":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_frontier":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_problem":{"anyOf":[{"type":"string"},{"type":"null"}]},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"bio_launchpad":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_hypothesis":{"anyOf":[{"type":"object","properties":{"stats":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"}},"required":["value","label"],"additionalProperties":false}},"bulletPoints":{"maxItems":50,"type":"array","items":{"type":"string"}},"statement":{"type":"string"},"marketDocuments":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["litepaper","pitch_deck","documentation","api_spec","whitepaper"]},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false}},"description":{}},"additionalProperties":true},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"title_image":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"type":"string","minLength":2,"maxLength":8},"tokenomics":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"openlabs_project_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"launch_parameters":{"type":"object","properties":{"dao_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"dao_page_url":{"anyOf":[{},{"type":"null"}]},"dao_treasury_wallet_address":{"anyOf":[{"type":"string"},{"type":"null","const":null}]},"ip_nft_url":{"anyOf":[{},{"type":"null"}]},"ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]},"lab_shortname":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"multi_sig_wallet_address":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"chain":{"type":"string","enum":["ETH","BASE","SOL"]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["chain","address"],"additionalProperties":false}},{"type":"null"}]},"fdv_target":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition_sale_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"lp_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"milestone_threshold_fdv":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_immediate_amount":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_member_allocation":{"anyOf":[{"maxItems":10,"type":"array","items":{"type":"object","properties":{"address":{"type":"string","minLength":1},"percent":{"type":"number","minimum":0,"maximum":1}},"required":["address","percent"],"additionalProperties":false}},{"type":"null"}]},"treasury_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]}},"additionalProperties":false},"molabs_setup":{"type":"object","properties":{"pending_ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]}},"additionalProperties":false},"recommended_reads":{"maxItems":9,"type":"array","items":{"type":"object","properties":{"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"title":{"type":"string"},"url":{"anyOf":[{},{"type":"null"}]}},"required":["title"],"additionalProperties":false}},"roadmap_items":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_completed":{"type":"boolean"},"order":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["title","date"],"additionalProperties":false}},"team_members":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"bio":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"credentials":{"type":"object","additionalProperties":true},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_lead":{"type":"boolean"},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"name":{"type":"string"},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]}},"required":["name"],"additionalProperties":false}}},"required":["project_name","project_type","description","email"],"additionalProperties":false},"applicationSaveResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"message":{"type":"string"},"recordId":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string"},"category":{"anyOf":[{"type":"string","enum":["Brain Longevity","Aging","Mental Health","Women's Health","Oncology","Metabolic Health","Microbiome","Immunology","Cardiovascular","Respiratory","Diagnostics","Materials","Neurodegeneration","COVID","Cryopreservation","Genomics Research","Gut Health","Hair Loss","Longevity","Men's Health","Nootropics","Peptides","Pediatrics","Psychedelics","Quantum Biology","Rare Diseases","Spine Health","Synthetic Biology","Other"]},{"type":"null"}]},"topic":{"type":"string","enum":["ai-machine-learning","biology-life-sciences","chemistry-materials","earth-climate-science","engineering-robotics","mathematics-computer-science","medicine-health","neuroscience-brain","physics-astronomy","social-behavioral-sciences","general-science"]},"tags":{"type":"array","items":{"type":"string","enum":["aging","longevity","oncology","womens-health","mens-health","pediatrics","cardiovascular","respiratory","metabolic-health","immunology","diagnostics","microbiome","gut-health","hair-loss","spine-health","rare-diseases","covid","peptides","pharmacogenomics","mental-health","neurodegeneration","nootropics","brain-longevity","psychedelics","synthetic-biology","genomics-research","cryopreservation","quantum-biology","marine-biology","ai-security","climate-active-tech"]}},"project_type":{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},"description":{"type":"string","minLength":1,"maxLength":500},"state":{"anyOf":[{"type":"string","enum":["building","pending_launch","upcoming","launching","failed","live","funded","trading"]},{"type":"null"}]},"decision_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"final_decision":{"anyOf":[{"type":"string","enum":["submitted","accepted","rejected","withdrawn"]},{"type":"null"}]},"lead_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"type":"string"},"github_url":{"anyOf":[{},{"type":"null"}]},"google_scholar_url":{"anyOf":[{},{"type":"null"}]},"discord_url":{"anyOf":[{},{"type":"null"}]},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"telegram_url":{"anyOf":[{},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]},"pitch_deck_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"prototype_url":{"anyOf":[{},{"type":"null"}]},"whitepaper_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_solution_edge":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_frontier":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_problem":{"anyOf":[{"type":"string"},{"type":"null"}]},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"bio_launchpad":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_hypothesis":{"anyOf":[{"type":"object","properties":{"stats":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"}},"required":["value","label"],"additionalProperties":false}},"bulletPoints":{"maxItems":50,"type":"array","items":{"type":"string"}},"statement":{"type":"string"},"marketDocuments":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["litepaper","pitch_deck","documentation","api_spec","whitepaper"]},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false}},"description":{}},"additionalProperties":true},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"title_image":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"type":"string","minLength":2,"maxLength":8},"tokenomics":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"track":{"anyOf":[{"type":"string","enum":["sandbox","curated","featured"]},{"type":"null"}]},"openlabs_project_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"launch_parameters":{"type":"object","properties":{"dao_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"dao_page_url":{"anyOf":[{},{"type":"null"}]},"dao_treasury_wallet_address":{"anyOf":[{"type":"string"},{"type":"null","const":null}]},"ip_nft_url":{"anyOf":[{},{"type":"null"}]},"ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]},"lab_shortname":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"multi_sig_wallet_address":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"chain":{"type":"string","enum":["ETH","BASE","SOL"]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["chain","address"],"additionalProperties":false}},{"type":"null"}]},"fdv_target":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"advisors_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"bio_treasury_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"ignition_sale_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"lp_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"milestone_threshold_fdv":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reserve_liquidity_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_immediate_amount":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_member_allocation":{"anyOf":[{"maxItems":10,"type":"array","items":{"type":"object","properties":{"address":{"type":"string","minLength":1},"percent":{"type":"number","minimum":0,"maximum":1}},"required":["address","percent"],"additionalProperties":false}},{"type":"null"}]},"total_supply":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"treasury_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"vebio_airdrop_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]}},"additionalProperties":false},"molabs_setup":{"type":"object","properties":{"pending_ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]}},"additionalProperties":false},"recommended_reads":{"maxItems":9,"type":"array","items":{"type":"object","properties":{"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"title":{"type":"string"},"url":{"anyOf":[{},{"type":"null"}]}},"required":["title"],"additionalProperties":false}},"roadmap_items":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_completed":{"type":"boolean"},"order":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["title","date"],"additionalProperties":false}},"team_members":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"bio":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"credentials":{"type":"object","additionalProperties":true},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_lead":{"type":"boolean"},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"name":{"type":"string"},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]}},"required":["name"],"additionalProperties":false}}},"required":["project_name","project_type","description","email"],"additionalProperties":false}},"required":["success","message","data"],"additionalProperties":false},"applicationPatchRequestBodySchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string"},"category":{"anyOf":[{"type":"string","enum":["Brain Longevity","Aging","Mental Health","Women's Health","Oncology","Metabolic Health","Microbiome","Immunology","Cardiovascular","Respiratory","Diagnostics","Materials","Neurodegeneration","COVID","Cryopreservation","Genomics Research","Gut Health","Hair Loss","Longevity","Men's Health","Nootropics","Peptides","Pediatrics","Psychedelics","Quantum Biology","Rare Diseases","Spine Health","Synthetic Biology","Other"]},{"type":"null"}]},"topic":{"type":"string","enum":["ai-machine-learning","biology-life-sciences","chemistry-materials","earth-climate-science","engineering-robotics","mathematics-computer-science","medicine-health","neuroscience-brain","physics-astronomy","social-behavioral-sciences","general-science"]},"tags":{"type":"array","items":{"type":"string","enum":["aging","longevity","oncology","womens-health","mens-health","pediatrics","cardiovascular","respiratory","metabolic-health","immunology","diagnostics","microbiome","gut-health","hair-loss","spine-health","rare-diseases","covid","peptides","pharmacogenomics","mental-health","neurodegeneration","nootropics","brain-longevity","psychedelics","synthetic-biology","genomics-research","cryopreservation","quantum-biology","marine-biology","ai-security","climate-active-tech"]}},"project_type":{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},"description":{"type":"string","minLength":1,"maxLength":500},"submitted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"lead_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"email":{"type":"string"},"github_url":{"anyOf":[{},{"type":"null"}]},"google_scholar_url":{"anyOf":[{},{"type":"null"}]},"discord_url":{"anyOf":[{},{"type":"null"}]},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"telegram_url":{"anyOf":[{},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]},"pitch_deck_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"prototype_url":{"anyOf":[{},{"type":"null"}]},"whitepaper_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_solution_edge":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_frontier":{"anyOf":[{"type":"string"},{"type":"null"}]},"thesis_problem":{"anyOf":[{"type":"string"},{"type":"null"}]},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"bio_launchpad":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_hypothesis":{"anyOf":[{"type":"object","properties":{"stats":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"value":{"type":"string"},"label":{"type":"string"}},"required":["value","label"],"additionalProperties":false}},"bulletPoints":{"maxItems":50,"type":"array","items":{"type":"string"}},"statement":{"type":"string"},"marketDocuments":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["litepaper","pitch_deck","documentation","api_spec","whitepaper"]},"url":{"type":"string"}},"required":["type","url"],"additionalProperties":false}},"description":{}},"additionalProperties":true},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"title_image":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"type":"string","minLength":2,"maxLength":8},"tokenomics":{"anyOf":[{"anyOf":[{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"array","items":{"type":"object","additionalProperties":true}}]},{"type":"null"}]},"openlabs_project_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"launch_parameters":{"type":"object","properties":{"dao_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"dao_page_url":{"anyOf":[{},{"type":"null"}]},"dao_treasury_wallet_address":{"anyOf":[{"type":"string"},{"type":"null","const":null}]},"ip_nft_url":{"anyOf":[{},{"type":"null"}]},"ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]},"lab_shortname":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"multi_sig_wallet_address":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"chain":{"type":"string","enum":["ETH","BASE","SOL"]},"address":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["chain","address"],"additionalProperties":false}},{"type":"null"}]},"fdv_target":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"ignition_sale_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"lp_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"milestone_threshold_fdv":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]},"team_immediate_amount":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"team_member_allocation":{"anyOf":[{"maxItems":10,"type":"array","items":{"type":"object","properties":{"address":{"type":"string","minLength":1},"percent":{"type":"number","minimum":0,"maximum":1}},"required":["address","percent"],"additionalProperties":false}},{"type":"null"}]},"treasury_allocation_percent":{"anyOf":[{"type":"number","minimum":0,"maximum":1},{"type":"null"}]}},"additionalProperties":false},"molabs_setup":{"type":"object","properties":{"pending_ocl_id":{"anyOf":[{"type":"string","pattern":"^0x[0-9a-f]{64}$"},{"type":"null"}]}},"additionalProperties":false},"recommended_reads":{"maxItems":9,"type":"array","items":{"type":"object","properties":{"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"title":{"type":"string"},"url":{"anyOf":[{},{"type":"null"}]}},"required":["title"],"additionalProperties":false}},"roadmap_items":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_completed":{"type":"boolean"},"order":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["title","date"],"additionalProperties":false}},"team_members":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"bio":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"string"},{"type":"null"}]},"credentials":{"type":"object","additionalProperties":true},"email":{"anyOf":[{"type":"string"},{"type":"null"}]},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"is_lead":{"type":"boolean"},"linkedin_url":{"anyOf":[{},{"type":"null"}]},"name":{"type":"string"},"order":{"anyOf":[{"type":"integer","minimum":-2147483648,"maximum":2147483647},{"type":"null"}]},"reddit_url":{"anyOf":[{},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_url":{"anyOf":[{},{"type":"null"}]}},"required":["name"],"additionalProperties":false}}},"additionalProperties":false},"applicationTeamActivityListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"application_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"category":{"type":"string","enum":["community","governance","reporting","research","treasury"]},"title":{"type":"string"},"description":{"type":"string"},"author_label":{"type":"string"},"author_avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"actor_principal_type":{"type":"string","enum":["user","service","agent"]},"actor_principal_id":{"type":"string"},"created_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"updated_at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"deleted_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","application_id","category","title","description","author_label","author_avatar_url","actor_principal_type","actor_principal_id","created_at","updated_at","deleted_at"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"totalPages":{"type":"number"}},"required":["page","limit","total","totalPages"],"additionalProperties":false}},"required":["success","data","pagination"],"additionalProperties":false},"applicationXFeedResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"avatarUrl":{"type":"string","format":"uri","pattern":"^https:\\/\\/.*"},"followerCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"posts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^\\d+$"},"author":{"type":"string"},"handle":{"type":"string","pattern":"^@[A-Za-z0-9_]{1,15}$"},"content":{"type":"string"},"timestamp":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"url":{"type":"string","pattern":"^https:\\/\\/x\\.com\\/[A-Za-z0-9_]{1,15}\\/status\\/\\d+$"},"retweetCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"replyCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"likeCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"viewCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","author","handle","content","timestamp","url"],"additionalProperties":false}}},"required":["followerCount","posts"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"applicationDirtyEventsResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"applicationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["applicationId","updatedAt"],"additionalProperties":false}},"serverTime":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"}},"required":["success","data","serverTime"],"additionalProperties":false},"openlabsApplicationLinkRequestSchema":{"type":"object","properties":{"description":{"type":"string","minLength":1},"email":{"type":"string","minLength":1},"openlabs_project_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string","minLength":1},"project_type":{"default":"IPT","type":"string","enum":["IPT"]},"tags":{"type":"array","items":{"type":"string","enum":["aging","longevity","oncology","womens-health","mens-health","pediatrics","cardiovascular","respiratory","metabolic-health","immunology","diagnostics","microbiome","gut-health","hair-loss","spine-health","rare-diseases","covid","peptides","pharmacogenomics","mental-health","neurodegeneration","nootropics","brain-longevity","psychedelics","synthetic-biology","genomics-research","cryopreservation","quantum-biology","marine-biology","ai-security","climate-active-tech"]}},"topic":{"type":"string","enum":["ai-machine-learning","biology-life-sciences","chemistry-materials","earth-climate-science","engineering-robotics","mathematics-computer-science","medicine-health","neuroscience-brain","physics-astronomy","social-behavioral-sciences","general-science"]}},"required":["description","email","openlabs_project_id","project_name","project_type"],"additionalProperties":false},"applicationsListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project_name":{"type":"string"},"project_type":{"anyOf":[{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["Brain Longevity","Aging","Mental Health","Women's Health","Oncology","Metabolic Health","Microbiome","Immunology","Cardiovascular","Respiratory","Diagnostics","Materials","Neurodegeneration","COVID","Cryopreservation","Genomics Research","Gut Health","Hair Loss","Longevity","Men's Health","Nootropics","Peptides","Pediatrics","Psychedelics","Quantum Biology","Rare Diseases","Spine Health","Synthetic Biology","Other"]},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"final_decision":{"anyOf":[{"type":"string","enum":["submitted","accepted","rejected","withdrawn"]},{"type":"null"}]},"state":{"anyOf":[{"type":"string","enum":["building","pending_launch","upcoming","launching","failed","live","funded","trading"]},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"number"},{"type":"null"}]},"launch_date":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"title_image":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"anyOf":[{"type":"string"},{"type":"null"}]},"track":{"anyOf":[{"type":"string","enum":["sandbox","curated","featured"]},{"type":"null"}]},"website_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"market_hypothesis":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","project_name"],"additionalProperties":true}},"pagination":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"totalPages":{"type":"number"}},"required":["page","limit","total","totalPages"],"additionalProperties":false}},"required":["success","data","pagination"],"additionalProperties":false},"applicationTokensResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"project_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"project_type":{"anyOf":[{"type":"string","enum":["AI Agent","IPT","BioDAO","Other"]},{"type":"null"}]},"state":{"anyOf":[{"type":"string","enum":["building","pending_launch","upcoming","launching","failed","live","funded","trading"]},{"type":"null"}]},"category":{"anyOf":[{"type":"string"},{"type":"null"}]},"slug":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_symbol":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"token_address":{"anyOf":[{"type":"string"},{"type":"null"}]},"launch_id":{"anyOf":[{"type":"number"},{"type":"null"}]},"logo":{"anyOf":[{"type":"string"},{"type":"null"}]},"updated_at":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]}},"required":["id","project_name","project_type","state","category","slug","token_symbol","token_id","token_address","launch_id","logo","updated_at"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"totalPages":{"type":"number"}},"required":["page","limit","total","totalPages"],"additionalProperties":false},"meta":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"total_pages":{"type":"number"}},"required":["page","limit","total","total_pages"],"additionalProperties":false}},"required":["success","data","pagination","meta"],"additionalProperties":false},"reportingActivityLogDeleteResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":false},"reportingActivityLogListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reportId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"eventType":{"type":"string"},"actorPrincipalType":{"type":"string","enum":["user","service","agent"]},"actorPrincipalId":{"type":"string"},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","reportId","eventType","actorPrincipalType","actorPrincipalId","payload","createdAt","updatedAt","deletedAt"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"totalPages":{"type":"number"}},"required":["page","limit","total","totalPages"],"additionalProperties":false}},"required":["success","data","pagination"],"additionalProperties":false},"reportingCreateActivityBodySchema":{"type":"object","properties":{"event_type":{"type":"string","minLength":1},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},"actor_principal_type":{"type":"string","enum":["user","service","agent"]},"actor_principal_id":{"type":"string","minLength":1}},"required":["event_type","payload"],"additionalProperties":false},"reportingActivityLogResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reportId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"eventType":{"type":"string"},"actorPrincipalType":{"type":"string","enum":["user","service","agent"]},"actorPrincipalId":{"type":"string"},"payload":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","reportId","eventType","actorPrincipalType","actorPrincipalId","payload","createdAt","updatedAt","deletedAt"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingUpdateMembershipBodySchema":{"type":"object","properties":{"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["pending","accepted","declined"]}},"additionalProperties":false},"reportingMembershipResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"principalType":{"type":"string","enum":["user","service","agent"]},"principalId":{"type":"string"},"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["pending","accepted","declined"]}},"required":["id","entityId","principalType","principalId","role","status"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingEmptySuccessResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":false},"reportingMembershipsResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"principalType":{"type":"string","enum":["user","service","agent"]},"principalId":{"type":"string"},"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["pending","accepted","declined"]}},"required":["id","entityId","principalType","principalId","role","status"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"reportingCreateMembershipBodySchema":{"type":"object","properties":{"principal_id":{"type":"string","minLength":1},"principal_type":{"type":"string","enum":["user","service","agent"]},"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["pending","accepted","declined"]}},"required":["principal_id","principal_type","role","status"],"additionalProperties":false},"reportingCurrentMonthlyReportResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"current_report":{"anyOf":[{"type":"object","properties":{"period_month":{"type":"string"},"period_label":{"type":"string"},"due_at":{"type":"string"},"is_past_due":{"type":"boolean"},"report":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_entity_id":{"type":"string"},"period_month":{"type":"string"},"status":{"type":"string","enum":["draft","submitted","reviewed"]},"display_status":{"type":"string","enum":["not_started","started","submitted"]},"due_date":{"type":"string"},"accountability_score":{"anyOf":[{"type":"number"},{"type":"null"}]},"accountability_status":{"anyOf":[{"type":"string","enum":["not_submitted","on_time","late"]},{"type":"null"}]},"days_late":{"anyOf":[{"type":"number"},{"type":"null"}]},"score_results":{"type":"object","properties":{"accountability":{"anyOf":[{"type":"object","properties":{"concern":{"type":"string","const":"accountability"},"decision":{"type":"string","enum":["not_submitted","on_time","late"]},"details":{"type":"object","properties":{"accountabilityStatus":{"type":"string","enum":["not_submitted","on_time","late"]},"daysLate":{"type":"number"},"source":{"type":"string","const":"report_accountability_view"}},"required":["accountabilityStatus","daysLate","source"],"additionalProperties":false},"maxScore":{"type":"number","const":20},"normalized":{"type":"number"},"reasons":{"type":"array","items":{"type":"string"}},"score":{"type":"number"},"scorer":{"type":"string","const":"reporting.accountability"},"vertical":{"type":"string","const":"reporting"}},"required":["concern","decision","details","maxScore","normalized","reasons","score","scorer","vertical"],"additionalProperties":false},{"type":"null"}]}},"required":["accountability"],"additionalProperties":false},"created_by_principal_type":{"type":"string","enum":["user","service","agent"]},"created_by_principal_id":{"type":"string"},"updated_by_principal_type":{"type":"string","enum":["user","service","agent"]},"updated_by_principal_id":{"type":"string"},"scientific_milestone":{"anyOf":[{"type":"string"},{"type":"null"}]},"scientific_evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"commercial_progress":{"anyOf":[{"type":"string"},{"type":"null"}]},"revenue_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"treasury_balance_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"burn_runway_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_size_metric":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_metric_type":{"anyOf":[{"type":"string","enum":["token_holders","discord_members","dao_participants"]},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"reviewed_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"roadmap_snapshots":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_roadmap_item_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"created_at":{"type":"string"}},"required":["id","report_id","entity_id","source_roadmap_item_id","title","description","category","status","date","url","order","created_at"],"additionalProperties":false}},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"required":["id","entity_id","period_month","status","display_status","due_date","accountability_score","accountability_status","days_late","score_results","created_by_principal_type","created_by_principal_id","updated_by_principal_type","updated_by_principal_id","scientific_milestone","scientific_evidence_url","commercial_progress","revenue_usd","treasury_balance_usd","burn_runway_note","governance_activity_summary","governance_activity_url","community_activity_summary","community_size_metric","community_metric_type","submitted_at","reviewed_at","roadmap_snapshots","created_at","updated_at"],"additionalProperties":false}},"required":["period_month","period_label","due_at","is_past_due","report"],"additionalProperties":false},{"type":"null"}]}},"required":["current_report"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingUpdateRoadmapItemStatusBodySchema":{"type":"object","properties":{"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]}},"required":["status"],"additionalProperties":false},"reportingRoadmapItemResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"isCompleted":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","title","description","category","status","date","isCompleted","url","order","createdAt","updatedAt","deletedAt"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingRoadmapItemsListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"isCompleted":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","title","description","category","status","date","isCompleted","url","order","createdAt","updatedAt","deletedAt"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"reportingCreateRoadmapItemBodySchema":{"type":"object","properties":{"title":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"is_completed":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["title","date"],"additionalProperties":false},"reportingReplaceRoadmapItemsBodySchema":{"type":"object","properties":{"items":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string","minLength":1},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"is_completed":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["title","date"],"additionalProperties":false}}},"required":["items"],"additionalProperties":false},"reportingRoadmapItemsReplaceResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"isCompleted":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","title","description","category","status","date","isCompleted","url","order","createdAt","updatedAt","deletedAt"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"reportingEntityResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"status":{"type":"string"},"source_system":{"type":"string"},"source_entity_type":{"type":"string"},"source_entity_id":{"type":"string"},"reporting_start_month":{"anyOf":[{"type":"string"},{"type":"null"}]},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"required":["id","name","status","source_system","source_entity_type","source_entity_id","reporting_start_month","created_at","updated_at"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingUpdateEntityBodySchema":{"type":"object","properties":{"name":{"type":"string","minLength":1},"status":{"type":"string","minLength":1},"reporting_start_month":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]}},"additionalProperties":false},"reportingCreateEntityBodySchema":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string","minLength":1},"status":{"type":"string","minLength":1},"reporting_start_month":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]},"source_system":{"type":"string","enum":["buildspace","openlabs","launchpad"]},"source_entity_type":{"type":"string","minLength":1},"source_entity_id":{"type":"string","minLength":1}},"required":["name","status","source_system","source_entity_type","source_entity_id"],"additionalProperties":false},"reportingUpsertMembershipBySourceBodySchema":{"type":"object","properties":{"source_system":{"type":"string","enum":["buildspace","openlabs","launchpad"]},"source_entity_type":{"type":"string","minLength":1},"source_entity_id":{"type":"string","minLength":1},"principal_id":{"type":"string","minLength":1},"principal_type":{"type":"string","enum":["user","service","agent"]},"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["pending","accepted","declined"]}},"required":["source_system","source_entity_type","source_entity_id","principal_id","principal_type","role","status"],"additionalProperties":false},"reportingReportResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_entity_id":{"type":"string"},"period_month":{"type":"string"},"status":{"type":"string","enum":["draft","submitted","reviewed"]},"display_status":{"type":"string","enum":["not_started","started","submitted"]},"due_date":{"type":"string"},"accountability_score":{"anyOf":[{"type":"number"},{"type":"null"}]},"accountability_status":{"anyOf":[{"type":"string","enum":["not_submitted","on_time","late"]},{"type":"null"}]},"days_late":{"anyOf":[{"type":"number"},{"type":"null"}]},"score_results":{"type":"object","properties":{"accountability":{"anyOf":[{"type":"object","properties":{"concern":{"type":"string","const":"accountability"},"decision":{"type":"string","enum":["not_submitted","on_time","late"]},"details":{"type":"object","properties":{"accountabilityStatus":{"type":"string","enum":["not_submitted","on_time","late"]},"daysLate":{"type":"number"},"source":{"type":"string","const":"report_accountability_view"}},"required":["accountabilityStatus","daysLate","source"],"additionalProperties":false},"maxScore":{"type":"number","const":20},"normalized":{"type":"number"},"reasons":{"type":"array","items":{"type":"string"}},"score":{"type":"number"},"scorer":{"type":"string","const":"reporting.accountability"},"vertical":{"type":"string","const":"reporting"}},"required":["concern","decision","details","maxScore","normalized","reasons","score","scorer","vertical"],"additionalProperties":false},{"type":"null"}]}},"required":["accountability"],"additionalProperties":false},"created_by_principal_type":{"type":"string","enum":["user","service","agent"]},"created_by_principal_id":{"type":"string"},"updated_by_principal_type":{"type":"string","enum":["user","service","agent"]},"updated_by_principal_id":{"type":"string"},"scientific_milestone":{"anyOf":[{"type":"string"},{"type":"null"}]},"scientific_evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"commercial_progress":{"anyOf":[{"type":"string"},{"type":"null"}]},"revenue_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"treasury_balance_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"burn_runway_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_size_metric":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_metric_type":{"anyOf":[{"type":"string","enum":["token_holders","discord_members","dao_participants"]},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"reviewed_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"roadmap_snapshots":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_roadmap_item_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"created_at":{"type":"string"}},"required":["id","report_id","entity_id","source_roadmap_item_id","title","description","category","status","date","url","order","created_at"],"additionalProperties":false}},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"required":["id","entity_id","period_month","status","display_status","due_date","accountability_score","accountability_status","days_late","score_results","created_by_principal_type","created_by_principal_id","updated_by_principal_type","updated_by_principal_id","scientific_milestone","scientific_evidence_url","commercial_progress","revenue_usd","treasury_balance_usd","burn_runway_note","governance_activity_summary","governance_activity_url","community_activity_summary","community_size_metric","community_metric_type","submitted_at","reviewed_at","roadmap_snapshots","created_at","updated_at"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingUpdateReportBodySchema":{"type":"object","properties":{"scientific_milestone":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"scientific_evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"commercial_progress":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"revenue_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"treasury_balance_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"burn_runway_note":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"governance_activity_summary":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"governance_activity_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_activity_summary":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"community_size_metric":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_metric_type":{"anyOf":[{"type":"string","enum":["token_holders","discord_members","dao_participants"]},{"type":"null"}]},"actor_principal_type":{"type":"string","enum":["user","service","agent"]},"actor_principal_id":{"type":"string","minLength":1}},"additionalProperties":false},"reportingSubmitReportBodySchema":{"type":"object","properties":{"actor_principal_type":{"type":"string","enum":["user","service","agent"]},"actor_principal_id":{"type":"string","minLength":1}},"additionalProperties":false},"reportingCurrentReportSubmissionSummaryResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","properties":{"period_month":{"type":"string"},"submitted_count":{"type":"number"},"total_count":{"type":"number"}},"required":["period_month","submitted_count","total_count"],"additionalProperties":false}},"required":["success","data"],"additionalProperties":false},"reportingReportsListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_entity_id":{"type":"string"},"period_month":{"type":"string"},"status":{"type":"string","enum":["draft","submitted","reviewed"]},"display_status":{"type":"string","enum":["not_started","started","submitted"]},"due_date":{"type":"string"},"accountability_score":{"anyOf":[{"type":"number"},{"type":"null"}]},"accountability_status":{"anyOf":[{"type":"string","enum":["not_submitted","on_time","late"]},{"type":"null"}]},"days_late":{"anyOf":[{"type":"number"},{"type":"null"}]},"score_results":{"type":"object","properties":{"accountability":{"anyOf":[{"type":"object","properties":{"concern":{"type":"string","const":"accountability"},"decision":{"type":"string","enum":["not_submitted","on_time","late"]},"details":{"type":"object","properties":{"accountabilityStatus":{"type":"string","enum":["not_submitted","on_time","late"]},"daysLate":{"type":"number"},"source":{"type":"string","const":"report_accountability_view"}},"required":["accountabilityStatus","daysLate","source"],"additionalProperties":false},"maxScore":{"type":"number","const":20},"normalized":{"type":"number"},"reasons":{"type":"array","items":{"type":"string"}},"score":{"type":"number"},"scorer":{"type":"string","const":"reporting.accountability"},"vertical":{"type":"string","const":"reporting"}},"required":["concern","decision","details","maxScore","normalized","reasons","score","scorer","vertical"],"additionalProperties":false},{"type":"null"}]}},"required":["accountability"],"additionalProperties":false},"created_by_principal_type":{"type":"string","enum":["user","service","agent"]},"created_by_principal_id":{"type":"string"},"updated_by_principal_type":{"type":"string","enum":["user","service","agent"]},"updated_by_principal_id":{"type":"string"},"scientific_milestone":{"anyOf":[{"type":"string"},{"type":"null"}]},"scientific_evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"commercial_progress":{"anyOf":[{"type":"string"},{"type":"null"}]},"revenue_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"treasury_balance_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"burn_runway_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_size_metric":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_metric_type":{"anyOf":[{"type":"string","enum":["token_holders","discord_members","dao_participants"]},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"reviewed_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"roadmap_snapshots":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_roadmap_item_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"created_at":{"type":"string"}},"required":["id","report_id","entity_id","source_roadmap_item_id","title","description","category","status","date","url","order","created_at"],"additionalProperties":false}},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"required":["id","entity_id","period_month","status","display_status","due_date","accountability_score","accountability_status","days_late","score_results","created_by_principal_type","created_by_principal_id","updated_by_principal_type","updated_by_principal_id","scientific_milestone","scientific_evidence_url","commercial_progress","revenue_usd","treasury_balance_usd","burn_runway_note","governance_activity_summary","governance_activity_url","community_activity_summary","community_size_metric","community_metric_type","submitted_at","reviewed_at","roadmap_snapshots","created_at","updated_at"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"reportingCreateReportBodySchema":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"period_month":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"actor_principal_type":{"type":"string","enum":["user","service","agent"]},"actor_principal_id":{"type":"string","minLength":1}},"required":["entity_id","period_month"],"additionalProperties":false},"reportingReportSubmissionsResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_entity_id":{"type":"string"},"period_month":{"type":"string"},"status":{"type":"string","enum":["draft","submitted","reviewed"]},"display_status":{"type":"string","enum":["not_started","started","submitted"]},"due_date":{"type":"string"},"accountability_score":{"anyOf":[{"type":"number"},{"type":"null"}]},"accountability_status":{"anyOf":[{"type":"string","enum":["not_submitted","on_time","late"]},{"type":"null"}]},"days_late":{"anyOf":[{"type":"number"},{"type":"null"}]},"score_results":{"type":"object","properties":{"accountability":{"anyOf":[{"type":"object","properties":{"concern":{"type":"string","const":"accountability"},"decision":{"type":"string","enum":["not_submitted","on_time","late"]},"details":{"type":"object","properties":{"accountabilityStatus":{"type":"string","enum":["not_submitted","on_time","late"]},"daysLate":{"type":"number"},"source":{"type":"string","const":"report_accountability_view"}},"required":["accountabilityStatus","daysLate","source"],"additionalProperties":false},"maxScore":{"type":"number","const":20},"normalized":{"type":"number"},"reasons":{"type":"array","items":{"type":"string"}},"score":{"type":"number"},"scorer":{"type":"string","const":"reporting.accountability"},"vertical":{"type":"string","const":"reporting"}},"required":["concern","decision","details","maxScore","normalized","reasons","score","scorer","vertical"],"additionalProperties":false},{"type":"null"}]}},"required":["accountability"],"additionalProperties":false},"created_by_principal_type":{"type":"string","enum":["user","service","agent"]},"created_by_principal_id":{"type":"string"},"updated_by_principal_type":{"type":"string","enum":["user","service","agent"]},"updated_by_principal_id":{"type":"string"},"scientific_milestone":{"anyOf":[{"type":"string"},{"type":"null"}]},"scientific_evidence_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"commercial_progress":{"anyOf":[{"type":"string"},{"type":"null"}]},"revenue_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"treasury_balance_usd":{"anyOf":[{"type":"string"},{"type":"null"}]},"burn_runway_note":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"governance_activity_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_activity_summary":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_size_metric":{"anyOf":[{"type":"string"},{"type":"null"}]},"community_metric_type":{"anyOf":[{"type":"string","enum":["token_holders","discord_members","dao_participants"]},{"type":"null"}]},"submitted_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"reviewed_at":{"anyOf":[{"type":"string"},{"type":"null"}]},"roadmap_snapshots":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_roadmap_item_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"created_at":{"type":"string"}},"required":["id","report_id","entity_id","source_roadmap_item_id","title","description","category","status","date","url","order","created_at"],"additionalProperties":false}},"created_at":{"type":"string"},"updated_at":{"type":"string"}},"required":["id","entity_id","source_entity_id","period_month","status","display_status","due_date","accountability_score","accountability_status","days_late","score_results","created_by_principal_type","created_by_principal_id","updated_by_principal_type","updated_by_principal_id","scientific_milestone","scientific_evidence_url","commercial_progress","revenue_usd","treasury_balance_usd","burn_runway_note","governance_activity_summary","governance_activity_url","community_activity_summary","community_size_metric","community_metric_type","submitted_at","reviewed_at","roadmap_snapshots","created_at","updated_at"],"additionalProperties":false}},"pagination":{"type":"object","properties":{"page":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"totalPages":{"type":"number"}},"required":["page","limit","total","totalPages"],"additionalProperties":false}},"required":["success","data","pagination"],"additionalProperties":false},"reportingRoadmapItemsBySourceResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"source_entity_id":{"type":"string"},"roadmap_items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"isCompleted":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","title","description","category","status","date","isCompleted","url","order","createdAt","updatedAt","deletedAt"],"additionalProperties":false}}},"required":["source_entity_id","roadmap_items"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false},"applicationReportUpdateBodySchema":{"type":"object","properties":{"scientific_milestone":{"allOf":[{"$ref":"#/components/schemas/reportTextFieldSchema"}]},"commercial_progress":{"allOf":[{"$ref":"#/components/schemas/reportTextFieldSchema"}]},"burn_runway_note":{"allOf":[{"$ref":"#/components/schemas/reportTextFieldSchema"}]},"governance_activity_summary":{"allOf":[{"$ref":"#/components/schemas/reportTextFieldSchema"}]},"community_activity_summary":{"allOf":[{"$ref":"#/components/schemas/reportTextFieldSchema"}]}}},"reportTextFieldSchema":{"type":"string","maxLength":4000,"nullable":true},"applicationReportingReportStatusSchema":{"type":"string","enum":["draft","submitted","reviewed"]},"applicationReportingReportDisplayStatusSchema":{"type":"string","enum":["not_started","started","submitted"]},"applicationReportingRoadmapSnapshotSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"report_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entity_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"source_roadmap_item_id":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"created_at":{"type":"string"}},"required":["id","report_id","entity_id","source_roadmap_item_id","title","description","category","status","date","url","order","created_at"],"additionalProperties":true},"applicationReportingReportSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"entity_id":{"type":"string","format":"uuid"},"source_entity_id":{"type":"string","nullable":true},"project_name":{"type":"string","nullable":true},"period_month":{"type":"string"},"status":{"$ref":"#/components/schemas/applicationReportingReportStatusSchema"},"display_status":{"allOf":[{"$ref":"#/components/schemas/applicationReportingReportDisplayStatusSchema"}]},"due_date":{"type":"string","nullable":true},"accountability_score":{"type":"number","nullable":true},"accountability_status":{"type":"string","enum":["not_submitted","on_time","late"],"nullable":true},"days_late":{"type":"number","nullable":true},"roadmap_snapshots":{"type":"array","items":{"$ref":"#/components/schemas/applicationReportingRoadmapSnapshotSchema"},"nullable":true},"submitted_at":{"type":"string","nullable":true},"updated_at":{"type":"string","nullable":true},"scientific_milestone":{"type":"string","nullable":true},"commercial_progress":{"type":"string","nullable":true},"burn_runway_note":{"type":"string","nullable":true},"governance_activity_summary":{"type":"string","nullable":true},"community_activity_summary":{"type":"string","nullable":true}},"required":["id","entity_id","period_month","status"]},"applicationRoadmapItemSchema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"category":{"anyOf":[{"type":"string","enum":["research","commercialization","treasury","governance_community"]},{"type":"null"}]},"status":{"type":"string","enum":["not_started","in_progress","done","cancelled"]},"date":{"type":"string"},"isCompleted":{"type":"boolean"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]},"order":{"anyOf":[{"type":"number"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","entityId","title","description","category","status","date","isCompleted","url","order","createdAt","updatedAt","deletedAt"],"additionalProperties":true},"oclIdSchema":{"type":"string","pattern":"^0x[0-9a-f]{64}$"},"molabsWalletAddressSchema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"molabsOwnedLabSchema":{"type":"object","properties":{"oclId":{"type":"string"},"shortname":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"latestContributionAt":{"type":"string","nullable":true},"isVerified":{"type":"boolean","nullable":true},"trlValue":{"type":"string","nullable":true},"trlRationale":{"type":"string","nullable":true},"agreementState":{"type":"string","enum":["signed","needs_signature","unknown"]},"labUrl":{"type":"string"},"isLinkable":{"type":"boolean"},"isLinkedToThisApplication":{"type":"boolean"},"blockedReason":{"type":"string","enum":["agreement_not_signed","linked_to_other_application"],"nullable":true}},"required":["oclId","agreementState","labUrl","isLinkable","isLinkedToThisApplication"]},"apiErrorResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":false},"error":{"type":"string"},"code":{"type":"string","enum":["allowlist_empty","authentication_error","authorization_error","bad_gateway","base_url_required","conflict","database_error","database_connection_error","database_constraint_error","invalid_url","internal_server_error","not_found","not_in_allowlist","quota_exceeded","unknown_error","validation_error"]},"errorType":{"type":"string","enum":["allowlist_empty","authentication_error","authorization_error","bad_gateway","base_url_required","conflict","database_error","database_connection_error","database_constraint_error","invalid_url","internal_server_error","not_found","not_in_allowlist","quota_exceeded","unknown_error","validation_error"]},"details":{"type":"object","additionalProperties":true}},"required":["success","error","code"],"additionalProperties":true},"successOnlyResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":false},"applicationAgentsListResponseSchema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"application_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"privy_user_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_agent_ref":{"type":"string"},"display_name":{"type":"string"},"description":{"type":"string"},"avatar_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"type":"string","enum":["projectLead","editor","viewer"]},"status":{"type":"string","enum":["active","inactive"]},"metadata":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":true},{"type":"null"}]}},"required":["id","application_id","privy_user_id","external_agent_ref","display_name","description","avatar_url","role","status","metadata"],"additionalProperties":false}}},"required":["success","data"],"additionalProperties":false}},"responses":{"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Invalid request parameters","code":"validation_error","errorType":"validation_error"}}}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Unauthorized - Missing or invalid Authorization header","code":"authentication_error","errorType":"authentication_error"}}}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Access denied","code":"authorization_error","errorType":"authorization_error"}}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Resource not found","code":"not_found","errorType":"not_found"}}}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Quota exceeded","code":"quota_exceeded","errorType":"quota_exceeded"}}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"error":"Internal server error","code":"internal_server_error","errorType":"internal_server_error"}}}}}}}},"paths":{"/application":{"get":{"operationId":"get-application","summary":"List applications (dashboard or admin mode). Paginated with optional filters.","description":"List applications (dashboard or admin mode). Paginated with optional filters.","tags":["Application"],"parameters":[{"in":"query","name":"page","schema":{},"required":false},{"in":"query","name":"limit","schema":{},"required":false},{"in":"query","name":"search","schema":{"type":"string"},"required":false},{"in":"query","name":"project_type","schema":{"type":"string","enum":[]},"required":false},{"in":"query","name":"state","schema":{"type":"string","enum":[]},"required":false},{"in":"query","name":"final_decision","schema":{"type":"string","enum":[]},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}":{"get":{"operationId":"get-application-{id}","summary":"Get application by id","description":"Returns application for authenticated user","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/fullApplicationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"put":{"operationId":"put-application-{id}","summary":"Full replace application","description":"Replace application with full schema","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fullApplicationSchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationSaveResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"patch":{"operationId":"patch-application-{id}","summary":"Partial update application","description":"Merge partial fields into existing application","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationPatchRequestBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"delete":{"operationId":"delete-application-{id}","summary":"Delete application","description":"Delete application. Project lead or admin only.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"204":{"description":"No Content"},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/dirty-events":{"get":{"operationId":"get-application-dirty-events","summary":"List application dirty events for the authenticated interactive session.","description":"Returns application IDs whose deduped dirty-event rows changed since the provided server-time cursor. The cursor re-scans a short overlap window and paginates large feeds, so callers must treat the returned `serverTime` as an opaque resume cursor.","tags":["Application"],"parameters":[{"in":"query","name":"since","schema":{"type":"string"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationDirtyEventsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/new":{"post":{"operationId":"post-application-new","summary":"Create new application with full schema","description":"Create new application. Bearer auth required.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/fullApplicationSchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"429":{"$ref":"#/components/responses/429"},"500":{"$ref":"#/components/responses/500"}}}},"/application/openlabs-link":{"post":{"operationId":"post-application-openlabs-link","summary":"Find or create application for OpenLabs project","description":"Idempotently find or create a Buildspace application linked to an OpenLabs project id.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/openlabsApplicationLinkRequestSchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/tokens":{"get":{"operationId":"get-application-tokens","summary":"List token/application metadata.","description":"","tags":["Application"],"parameters":[{"in":"query","name":"project_type","schema":{"type":"object"},"required":false},{"in":"query","name":"states","schema":{"type":"object"},"required":false},{"in":"query","name":"state","schema":{"type":"object"},"required":false},{"in":"query","name":"search","schema":{"type":"string"},"required":false},{"in":"query","name":"limit","schema":{},"required":false},{"in":"query","name":"page","schema":{},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationTokensResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/agents":{"get":{"operationId":"get-application-id-agents","summary":"List application agents","description":"Returns `{ success, data }` where `data` is an array of application agent memberships for this application, joined with the shared/local actor profile from `agents` and the local application role from `application_agents`. Same access model as `GET /application/{id}` / team activity reads: service machine tokens need `applications:read`; interactive users and agents need admin or application membership. Creating and updating agents and their skill links is admin-only and is not part of this OpenAPI document.","tags":["Application-agents"],"parameters":[{"in":"path","name":"id","required":true,"description":"Application UUID. Service machine tokens require `applications:read`; interactive user and agent sessions resolve access through local application membership.","schema":{"type":"string","format":"uuid"}}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationAgentsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/documents":{"get":{"operationId":"get-application-{id}-documents","summary":"List application documents","description":"Returns the Buildspace document catalog for one application. A missing lab does not change the list. Machine credentials require applications:read. Interactive callers require application membership or admin access. Confidential rows are returned only to a service credential, an application member, or an admin, and only as a short-lived signed download URL. visibility=public limits the list to public rows.","tags":["Application"],"parameters":[{"in":"query","name":"visibility","schema":{"type":"string","enum":["public"]},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationDocumentsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/launch-request":{"post":{"operationId":"post-application-{id}-launch-request","summary":"Submit launch request","description":"Moves an editable application to pending_launch using a server-side action.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/molabs":{"post":{"operationId":"post-application-{id}-molabs","summary":"Link a Molecule lab to an application","description":"Step 2 of linking a lab, after GET /application/{id}/molabs/sign-in-message. Verifies LabNFT ownership onchain, exchanges the wallet signature for a short-lived Molecule service token, creates the data room when the lab has none yet, then stores `ocl_id` + `lab_shortname` on `launch_parameters`. Payer-agnostic: accepts a freshly minted or previously registered `oclId`. Idempotent — re-linking the lab already on this application returns 200 with `alreadyLinked: true`. Returns 409 when another application already claims the lab, and 403 with `labUrl` + `agreementState` when an existing lab still needs its Molecule assignment agreement signed. `walletAddress` must be linked to the authenticated account.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/molabsSetupBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/openlabs-anchor":{"patch":{"operationId":"patch-application-{id}-openlabs-anchor","summary":"Update OpenLabs application anchor.","description":"Service-only endpoint for setting or clearing the OpenLabs workspace anchor.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/openlabsApplicationAnchorRequestSchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationMutationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/preview-link":{"get":{"operationId":"get-application-{id}-preview-link","summary":"Get signed preview-link URL by application id.","description":"Returns a short-lived preview-link URL for hidden-state applications.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/previewLinkResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/reports":{"get":{"operationId":"get-application-{id}-reports","summary":"List application reports","description":"Lists draft and submitted monthly reports for a Buildspace application in Buildspace.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/roadmap-items":{"get":{"operationId":"get-application-{id}-roadmap-items","summary":"List application roadmap items","description":"Lists reporting roadmap items for a Buildspace application.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoadmapItemsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-application-{id}-roadmap-items","summary":"Create application roadmap item","description":"Creates a reporting roadmap item for a Buildspace application. Interactive callers must have edit access to the application.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoadmapItemCreateBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoadmapItemResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/role":{"get":{"operationId":"get-application-{id}-role","summary":"Get authenticated user's role for an application","description":"Returns user context role for a specific application","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoleResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/team":{"get":{"operationId":"get-application-{id}-team","summary":"List application reporting team","description":"Returns the reporting team for an application. Service machine tokens need `applications:read`; interactive users and agents need admin or application membership.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"responses":{"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/x-feed":{"get":{"operationId":"get-application-{id}-x-feed","summary":"Get application X feed","description":"Returns recent X posts for the application's stored X profile. Successful upstream data is cached by normalized handle for eight hours. Missing profiles return an empty feed. Machine credentials require applications:read; interactive callers require application membership or admin access.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationXFeedResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"429":{"description":"X rate limit","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"code":"quota_exceeded","error":"X is limiting requests. Please try again later."}}}}}},"500":{"$ref":"#/components/responses/500"},"502":{"description":"X feed unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiErrorResponseSchema"},"examples":{"default":{"value":{"success":false,"code":"bad_gateway","error":"X posts are unavailable."}}}}}}}}},"/application/slug/{slug}":{"get":{"operationId":"get-application-slug-{slug}","summary":"Get application by slug","description":"Returns application for authenticated user","tags":["Application"],"parameters":[{"in":"path","name":"slug","schema":{"type":"string"},"required":true,"example":"slug"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/fullApplicationResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/molabs/owned-labs":{"get":{"operationId":"get-application-{id}-molabs-owned-labs","summary":"List Onchain Labs owned by a wallet","description":"Proxies Molecule `labs(walletAddress, role: OWNER)` and annotates each lab with whether it can be linked to this application. Use `isLinkable` to pick a lab, `blockedReason` (`agreement_not_signed` | `linked_to_other_application`) to explain a rejection, `agreementState` (`signed` | `needs_signature` | `unknown`) with `blockedReason` to decide whether signing is still required, `labUrl` to send the owner to Molecule to sign the assignment agreement, and `isLinkedToThisApplication` to detect work already done. `walletAddress` must be linked to the authenticated account.","tags":["Application"],"parameters":[{"in":"query","name":"walletAddress","schema":{"type":"string"},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/molabsOwnedLabsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/molabs/sign-in-message":{"get":{"operationId":"get-application-{id}-molabs-sign-in-message","summary":"Get Molecule service sign-in message for wallet signing","description":"Step 1 of linking a lab. Sign the returned `message` with `walletAddress` (EIP-191 personal_sign) and pass the signature as `messageSignature` to POST /application/{id}/molabs. Messages are short-lived — fetch one per link attempt rather than caching. `walletAddress` must be linked to the authenticated account.","tags":["Application"],"parameters":[{"in":"query","name":"walletAddress","schema":{"type":"string"},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/reports/current":{"get":{"operationId":"get-application-{id}-reports-current","summary":"Get current monthly report","description":"Returns the current stored monthly report for a Buildspace application, or null when none exists.","tags":["Application"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationCurrentMonthlyReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/reports/period":{"get":{"operationId":"get-application-{id}-reports-period","summary":"Get application report by period","description":"Looks up one stored report for an application by report month and year.","tags":["Application"],"parameters":[{"in":"query","name":"month","schema":{"type":"integer"},"required":false},{"in":"query","name":"year","schema":{"type":"integer"},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/team/activity":{"get":{"operationId":"get-application-{id}-team-activity","summary":"List application team activity log entries","description":"Returns paginated team activity log entries for an application","tags":["Application"],"parameters":[{"in":"query","name":"page","schema":{},"required":false},{"in":"query","name":"limit","schema":{},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationTeamActivityListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-application-{id}-team-activity","summary":"Create application team activity log entry","description":"Records one team activity entry for an application. Interactive callers must have edit access to the application.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"responses":{"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/application/{id}/roadmap-items/{roadmapItemId}/status":{"patch":{"operationId":"patch-application-{id}-roadmap-items-{roadmapItemId}-status","summary":"Update application roadmap item status","description":"Updates one reporting roadmap item status for a Buildspace application. Interactive callers must have edit access to the application.","tags":["Application"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoadmapItemStatusBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationRoadmapItemResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/applications":{"get":{"operationId":"get-applications","summary":"List applications (dashboard or admin mode). Paginated with optional filters.","description":"List applications (dashboard or admin mode). Paginated with optional filters.","tags":["Applications"],"parameters":[{"in":"query","name":"page","schema":{},"required":false},{"in":"query","name":"limit","schema":{},"required":false},{"in":"query","name":"search","schema":{"type":"string"},"required":false},{"in":"query","name":"project_type","schema":{"type":"string","enum":[]},"required":false},{"in":"query","name":"state","schema":{"type":"string","enum":[]},"required":false},{"in":"query","name":"final_decision","schema":{"type":"string","enum":[]},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/auth/logout":{"post":{"operationId":"post-auth-logout","summary":"End the buildspace session","description":"Expires the httpOnly `buildspace_session` cookie. Requires no auth because it only clears the caller’s own cookie. Session tokens are stateless, so an access token already issued stays valid until it expires — call this same-origin so the expiring Set-Cookie lands on the host that issued the cookie.","tags":["Auth"],"responses":{"200":{"description":"Session cookie cleared","content":{"application/json":{"schema":{"$ref":"#/components/schemas/successOnlyResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}},"security":[]}},"/health":{"get":{"operationId":"get-health","summary":"","description":"","tags":["Health"],"parameters":[],"responses":{"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}},"security":[]}},"/reporting/entities":{"post":{"operationId":"post-reporting-entities","summary":"","description":"Create or update an entity by source reference (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateEntityBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEntityResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entity-projections":{"post":{"operationId":"post-reporting-entity-projections","summary":"","description":"Upsert an entity projection by source reference (scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateEntityBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEntityResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/reports":{"get":{"operationId":"get-reporting-reports","summary":"","description":"List real stored reports for an entity; with period_month, exact stored-report lookup returns 404 when missing","tags":["Reporting"],"parameters":[{"in":"query","name":"entity_id","schema":{"type":"string"},"required":false},{"in":"query","name":"period_month","schema":{"type":"object"},"required":false},{"in":"query","name":"status","schema":{"type":"array"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-reporting-reports","summary":"","description":"Create a draft report for an allowed reporting period","tags":["Reporting"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateReportBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}":{"get":{"operationId":"get-reporting-entities-{id}","summary":"","description":"Get an entity by ID (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEntityResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"patch":{"operationId":"patch-reporting-entities-{id}","summary":"","description":"Update an entity (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingUpdateEntityBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEntityResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"delete":{"operationId":"delete-reporting-entities-{id}","summary":"","description":"Delete an entity (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEmptySuccessResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/resolve":{"get":{"operationId":"get-reporting-entities-resolve","summary":"","description":"Resolve a reporting entity by source reference","tags":["Reporting"],"parameters":[{"in":"query","name":"source_system","schema":{},"required":false},{"in":"query","name":"source_entity_type","schema":{"type":"string"},"required":false},{"in":"query","name":"source_entity_id","schema":{"type":"string"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEntityResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entity-projections/memberships":{"post":{"operationId":"post-reporting-entity-projections-memberships","summary":"","description":"Upsert a projected membership by source reference (scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingUpsertMembershipBySourceBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingMembershipResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/reports/{id}":{"get":{"operationId":"get-reporting-reports-{id}","summary":"","description":"Get a single report by ID","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"patch":{"operationId":"patch-reporting-reports-{id}","summary":"","description":"Update a draft report","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingUpdateReportBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/reports/current-submission-summary":{"get":{"operationId":"get-reporting-reports-current-submission-summary","summary":"","description":"Count current-period reports for a source. Buildspace uses this from buildspace-api with explicit application ids for admin reporting dashboards.","tags":["Reporting"],"parameters":[{"in":"query","name":"source_entity_id","schema":{"type":"array"},"required":false},{"in":"query","name":"source_system","schema":{},"required":false},{"in":"query","name":"source_entity_type","schema":{"type":"string"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCurrentReportSubmissionSummaryResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/reports/submissions":{"get":{"operationId":"get-reporting-reports-submissions","summary":"","description":"List submitted reports for a source. Buildspace uses this from buildspace-api to render admin review queues.","tags":["Reporting"],"parameters":[{"in":"query","name":"source_entity_id","schema":{"type":"array"},"required":false},{"in":"query","name":"source_system","schema":{},"required":false},{"in":"query","name":"source_entity_type","schema":{"type":"string"},"required":false},{"in":"query","name":"page","schema":{"type":"integer"},"required":false},{"in":"query","name":"limit","schema":{"type":"integer"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportSubmissionsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/roadmap-items/by-source":{"get":{"operationId":"get-reporting-roadmap-items-by-source","summary":"","description":"List roadmap items for Buildspace application source ids. Used by buildspace-api to batch hydrate application lists.","tags":["Reporting"],"parameters":[{"in":"query","name":"source_entity_id","schema":{"type":"array"},"required":false},{"in":"query","name":"source_system","schema":{},"required":false},{"in":"query","name":"source_entity_type","schema":{"type":"string"},"required":false}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingRoadmapItemsBySourceResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/activity":{"get":{"operationId":"get-reporting-entities-{id}-activity","summary":"","description":"List activity log entries for an entity","tags":["Reporting"],"parameters":[{"in":"query","name":"event_type","schema":{"type":"string"},"required":false},{"in":"query","name":"report_id","schema":{"type":"string"},"required":false},{"in":"query","name":"page","schema":{"type":"integer"},"required":false},{"in":"query","name":"limit","schema":{"type":"integer"},"required":false},{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingActivityLogListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-reporting-entities-{id}-activity","summary":"","description":"Create an activity log entry for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateActivityBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingActivityLogResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/memberships":{"get":{"operationId":"get-reporting-entities-{id}-memberships","summary":"","description":"List memberships for an entity (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingMembershipsResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-reporting-entities-{id}-memberships","summary":"","description":"Create a membership for an entity (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateMembershipBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingMembershipResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/roadmap-items":{"get":{"operationId":"get-reporting-entities-{id}-roadmap-items","summary":"","description":"List roadmap items for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingRoadmapItemsListResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"post":{"operationId":"post-reporting-entities-{id}-roadmap-items","summary":"","description":"Create a roadmap item for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCreateRoadmapItemBodySchema"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingRoadmapItemResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"put":{"operationId":"put-reporting-entities-{id}-roadmap-items","summary":"","description":"Replace roadmap items for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReplaceRoadmapItemsBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingRoadmapItemsReplaceResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/reports/{id}/submit":{"post":{"operationId":"post-reporting-reports-{id}-submit","summary":"","description":"Submit a draft report for review","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingSubmitReportBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/activity/{activityId}":{"delete":{"operationId":"delete-reporting-entities-{id}-activity-{activityId}","summary":"","description":"Soft delete an activity log entry for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"},{"in":"path","name":"activityId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingActivityLogDeleteResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/memberships/{membershipId}":{"patch":{"operationId":"patch-reporting-entities-{id}-memberships-{membershipId}","summary":"","description":"Update a membership (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"},{"in":"path","name":"membershipId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingUpdateMembershipBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingMembershipResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"delete":{"operationId":"delete-reporting-entities-{id}-memberships-{membershipId}","summary":"","description":"Delete a membership (bearer + scoped service or Buildspace admin)","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"},{"in":"path","name":"membershipId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingEmptySuccessResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/reports/current":{"get":{"operationId":"get-reporting-entities-{id}-reports-current","summary":"","description":"Get the current month's stored report for an entity; returns null when no report exists","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingCurrentMonthlyReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reporting/entities/{id}/roadmap-items/{roadmapItemId}":{"patch":{"operationId":"patch-reporting-entities-{id}-roadmap-items-{roadmapItemId}","summary":"","description":"Update a roadmap item status for an entity","tags":["Reporting"],"parameters":[{"in":"path","name":"id","schema":{"type":"string"},"required":true,"example":"123"},{"in":"path","name":"roadmapItemId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingUpdateRoadmapItemStatusBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/reportingRoadmapItemResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reports/{reportId}":{"get":{"operationId":"get-reports-{reportId}","summary":"Get Buildspace report","description":"Returns one Buildspace-sourced report. Buildspace admins can read any Buildspace report; regular users and agents must have access to the owning application.","tags":["Reports"],"parameters":[{"in":"path","name":"reportId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}},"patch":{"operationId":"patch-reports-{reportId}","summary":"Update Buildspace report draft","description":"Saves draft fields for a Buildspace-sourced report. Buildspace admins can update any Buildspace report; regular users and agents must have edit access to the owning application. The real actor is recorded in reporting history.","tags":["Reports"],"parameters":[{"in":"path","name":"reportId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportUpdateBodySchema"}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}},"/reports/{reportId}/submit":{"post":{"operationId":"post-reports-{reportId}-submit","summary":"Submit Buildspace report","description":"Submits a Buildspace-sourced report. Buildspace admins can submit any Buildspace report; regular users and agents must have edit access to the owning application. The real actor is recorded in reporting history.","tags":["Reports"],"parameters":[{"in":"path","name":"reportId","schema":{"type":"string"},"required":true,"example":"123"}],"security":[{"BearerAuth":[]}],"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/applicationReportResponseSchema"}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}}}}