{"schemaVersion":1,"sourceUrl":"https://students-residents.aamc.org/how-apply-medical-school-amcas/monitoring-your-application","description":"AMCAS official status observations and voluntary student reports. Timing summaries are estimates, not individual verification predictions.","fields":{"schemaVersion":"Feed contract version. Fields may be added without removing legacy fields.","applications[].id":"Opaque database row identifier. Do not interpret as a person or authentication credential.","applications[].official":"True for stored AMCAS official status observations identified by the legacy AMCASOFFICIAL marker. False for voluntary student reports. Official observations describe the processing queue, not individual applications.","applications[].submit":"Unix seconds. Later of the reported application submission and latest received transcript for that stored user, if present. For official observations, the date AMCAS says it is processing.","applications[].verified":"Unix seconds or null when not reported. For official observations, the AMCAS status as-of date; for student reports, reported verification date.","transcripts[].sent":"Reported transcript sent date in Unix seconds, or null when unknown.","transcripts[].received":"Reported transcript receipt date in Unix seconds, or null when unknown.","transcripts[].type":"Transcript delivery type: evendor, email, fax, or mail.","appYears[].cyclename":"Stable cycle label, for example 2026-27. Use this label for the cycle query parameter.","appYears[].year":"Cycle starting year.","appYears[].current":"True on the configured default cycle; other cycles may omit this field.","appYears[].transcript_start_date":"ISO 8601 timestamp for the cycle transcript window start. Client-side Date values are converted to Unix milliseconds for display.","appYears[].start_date":"ISO 8601 timestamp for the cycle submission window start. Client-side Date values are converted to Unix milliseconds for display.","appYears[].end_date":"ISO 8601 timestamp for the cycle window end. Client-side Date values are converted to Unix milliseconds for display.","lastPull":"Legacy Unix milliseconds for the most recent completed scrape, including status-only scrapes. Null if absent. Does not prove a usable official update.","freshness.status":"unavailable if no usable official date pair exists; current only when latest official as-of and successful fetch are within 48 hours and the latest scrape outcome is done; stale otherwise. Historical cycles naturally have older observations.","freshness.sourceUrl":"Official AAMC source URL.","freshness.lastCheckedAt":"ISO 8601 timestamp of the latest completed scrape attempt, including status-only or failed attempts. Null until explicitly recorded; legacy lastPull is not substituted.","freshness.lastSuccessfulUpdateAt":"ISO 8601 timestamp of the latest fetch with a usable official processing date and as-of date that was saved successfully. May confirm an existing observation. Null for legacy or absent metadata.","freshness.latestOfficialAsOf":"ISO 8601 timestamp derived from the latest usable stored official verified date across all cycles, excluding future dates and intervals outside 0 to less than 50 days, or null if unavailable. It is not the fetch time.","freshness.lastScrapeOutcome":"done, status-only, failed, or null when not recorded. A status-only response supplies no usable verification processing date.","freshness.staleAfterHours":"Freshness threshold in hours: 48."},"summary":{"endpoint":"GET /data/summary?cycle=2026-27; omit cycle for current cycle. Read-only stored data; no scrape or account action. Invalid, duplicate or array cycle parameters return 404. Unavailable data returns 503 with Retry-After: 60.","average":"days is the shared rounded official average, or null. n counts distinct official reporting dates in start through end, not applicants. Dates use America/New_York. Check average.end and freshness before claiming a current estimate.","transcripts":"total and received are valid cycle report counts; pending is total minus received. byDeliveryMethod includes type, total, received, meanDays (null without received reports). Consent-filtered voluntary reports, not all applicants. No personal fields or individual rows.","metadata":"schemaVersion is 1. sourceUrl is the fixed official AAMC source; canonicalUrl is the configured tracker URL. cycle gives name, current and ISO date bounds. freshness has the same meanings as the compatibility feed."},"calculations":{"verificationDays":"(verified - submit) / 86400. Charts and summaries retain only nonnegative intervals below 50 days and verified dates inside the selected cycle and not in the future. The raw feed is not filtered by these display rules.","transcriptDays":"(received - sent) / 86400. Summary rows require a supported delivery type, sent date inside the cycle transcript window and not in the future, and receipt at or after sent date, no later than now, and strictly before cycle end. There is no 50-day transcript bound. Charts use the same validity rules as summaries.","rollingAverage":"Mean official verification interval over seven calendar reporting dates ending on the latest valid official as-of date in the selected cycle, rounded up to whole days. Duplicate as-of dates count once. Future and incomplete pairs and intervals outside 0 to less than 50 days are excluded. A gap in reports does not extend the seven-day window; no valid observations produces an unavailable value.","nulls":"Null or missing dates mean unknown or unreported, never zero days. Exclude incomplete pairs from duration calculations."},"privacy":"Public rows exclude reports explicitly opted out of statistics and omit usernames and transcript names. Row identifiers remain for compatibility. Reports are voluntary and do not represent all applicants."}