{"openapi":"3.1.0","info":{"title":"Aideify owner reporting API","version":"1.0.0","description":"Owner-authorized aggregate signup reporting. These credentials do not grant document access or general Form Filler API access."},"servers":[{"url":"https://aideify.com"}],"paths":{"/api/v1/reports/signups":{"get":{"operationId":"getSignupReport","summary":"Read retained account signup totals and daily counts","security":[{"reportingKey":[]}],"parameters":[{"name":"from","in":"query","schema":{"type":"string","format":"date"},"description":"First reporting date; defaults to 29 days before today."},{"name":"to","in":"query","schema":{"type":"string","format":"date"},"description":"Last date, inclusive; defaults to today. Maximum 90 days."},{"name":"timezone","in":"query","schema":{"type":"string","default":"America/New_York"},"description":"IANA reporting timezone."}],"responses":{"200":{"description":"Aggregate counts. Unavailable historical days are null, never zero. Internal identities are excluded from external totals using the owner's configured list.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["schemaVersion","service","checkedAt","timezone","range","external","all","verifiedGuestOnly","coverage"],"properties":{"schemaVersion":{"const":1},"service":{"const":"aideify"},"checkedAt":{"type":"string"},"timezone":{"type":"string"},"range":{"type":"object","additionalProperties":false,"required":["from","to"],"properties":{"from":{"type":"string"},"to":{"type":"string"}}},"external":{"type":"object","additionalProperties":false,"required":["total","daily","legacyWithoutSignupTime"],"properties":{"total":{"type":"integer","minimum":0},"legacyWithoutSignupTime":{"type":"integer","minimum":0},"daily":{"type":"array","maxItems":90,"items":{"type":"object","additionalProperties":false,"required":["date","count"],"properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"count":{"type":["integer","null"],"minimum":0}}}}}},"all":{"type":"object","additionalProperties":false,"required":["total","daily","legacyWithoutSignupTime"],"properties":{"total":{"type":"integer","minimum":0},"legacyWithoutSignupTime":{"type":"integer","minimum":0},"daily":{"type":"array","maxItems":90,"items":{"type":"object","additionalProperties":false,"required":["date","count"],"properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"count":{"type":["integer","null"],"minimum":0}}}}}},"verifiedGuestOnly":{"type":"object","additionalProperties":false,"required":["external","all"],"properties":{"external":{"type":"integer","minimum":0},"all":{"type":"integer","minimum":0}}},"coverage":{"type":"object","additionalProperties":false,"required":["trackingStartedAt","currentDayPartial","firstDayPartial","definition"],"properties":{"trackingStartedAt":{"type":"string"},"currentDayPartial":{"const":true},"firstDayPartial":{"const":true},"definition":{"type":"string"}}}}}}}},"400":{"description":"Invalid date, future range, query parameter or timezone"},"401":{"description":"Missing or invalid reporting key"},"429":{"description":"Reporting limit exceeded; honor Retry-After"},"503":{"description":"Reporting is not configured or its source is unavailable"}}}}},"components":{"securitySchemes":{"reportingKey":{"type":"http","scheme":"bearer","description":"Owner-issued reporting integration key. Ordinary customer sessions are not accepted."}}}}