Skip to content
Partner Developer Portal

IM1 - Bulk Extract — Overview

IM1 - Bulk Extract (Interface Mechanism 1) is EMIS’s bulk data extract service. It provides partners and data consumers with structured, agreement-scoped snapshots of clinical and administrative data held in EMIS Web GP systems.

IM1 produces CSV files every run and delivers them to a per-consumer SFTP location. There are two types of files:

Bulk files are a full set of data as it exists at that point in time. They are sent to a consumer when:

  • A new agreement is created and has become valid
  • An invalid agreement has become valid again after a period of time
  • A consumer requests a re-bulk (a backfill)

Delta files are a smaller set of data representing the differences between one run and the previous run. The changes consist of additions, changes, and/or deletions in between, providing consumers with incremental updates.


Each IM1 extract is scoped to an agreement (a data-sharing agreement between a GP practice and a partner organisation). The extract covers the following table groups:

TableDescription
Admin_PatientCore patient demographics (name, DOB, address, NHS number, registration status)
Admin_PatientHistoryHistorical patient registration status changes
Admin_OrganisationGP practice / organisation details
Admin_LocationPhysical locations associated with an organisation
Admin_OrganisationLocationMapping of organisations to their locations
Admin_UserInRoleClinical and administrative staff user-role assignments
TableDescription
Appointment_SessionClinic / appointment session definitions
Appointment_SessionUserClinicians linked to a session
Appointment_SlotIndividual appointment slots (booked, available, blocked)
TableDescription
CareRecord_ConsultationTop-level consultation events
CareRecord_DiaryDiary / recall entries linked to consultations
CareRecord_ObservationClinical observations, measurements, and coded entries
CareRecord_ObservationReferralReferral information associated with observations
CareRecord_ProblemActive and resolved problem list entries
TableDescription
Prescribing_DrugRecordRepeat / acute drug prescribing records
Prescribing_IssueRecordIndividual prescription issue events
TableDescription
Coding_ClinicalCodeClinical code reference data (Read, SNOMED CT, EMIS codes)
Coding_DrugCodeDrug code reference data (BNF, dm+d mappings)
TableDescription
Audit_PatientAuditAudit trail of patient record access and changes
Audit_RegistrationAuditAudit trail of patient registration events
TableDescription
Agreement_SharingOrganisationOrganisations participating in a data-sharing agreement

flowchart LR
    A[EMIS Web] --> B[IM1 Extract]
    B --> C[Encrypted CSV Files]
    C --> D[SFTP Endpoint]
    D --> E[Consumer]

CSV files are generated for each feed and agreement, encrypted with the consumer’s GPG public key, and placed into the consumer’s dedicated SFTP location. Consumers collect the files using a standard SFTP client.

Each run produces one .csv.gpg file per table, per agreement.


All CSV files are encrypted with GPG (GNU Privacy Guard) before delivery.

  • During onboarding, consumers are required to provide their GPG public key, which can be uploaded via the IM1 Portal.
  • Every CSV file is encrypted with that key before being placed on the SFTP location.
  • Only the holder of the corresponding private key can decrypt the files.

GPG keys have an expiry date set by the key holder at the time of generation. It is the consumer’s responsibility to monitor their key’s expiry date and provide an updated public key before expiry. If a key expires, files will no longer be deliverable until a valid replacement key is uploaded via the IM1 Portal.

Partners can decrypt received files with any standard GPG client:

Terminal window
gpg --decrypt Admin_Patient_20260130.csv.gpg > Admin_Patient_20260130.csv

Ensure your private key is imported into your local GPG keyring before attempting decryption.


Files are delivered to a per-agreement SFTP endpoint that consumers access using SSH.

  • During onboarding, consumers are asked to upload their SSH public key via the IM1 Portal.
  • Consumers connect to the SFTP endpoint using the matching SSH private key.
  • Any standard FTP client (such as FileZilla) can be used to connect, browse, and download files.
  • Once connected, consumers can see only the files for their own feeds and agreements.

Delivered files follow the pattern:

<TableName>_<YYYY-MM-DD>[_<batch>].csv.gpg

For example:

Admin_Patient_2026-01-30.csv.gpg
CareRecord_Observation_2026-01-30_001.csv.gpg

Rebulk files may be split into numbered batches (e.g. _001, _002) when the dataset exceeds size thresholds.


For access requests, key management, or delivery issues, contact the EMIS Partner Integration team through your agreed support channel, or raise a support ticket via the EMIS Partner Portal.