{
  "resourceType": "OperationDefinition",
  "id": "Healthcare-Directory",
  "meta": {
    "versionId": "1",
    "lastUpdated": "2017-05-02T00:00:00+00:00"
  },
  "url": "http://epic.com/fhir/OperationDefinition/directory",
  "name": "directory",
  "status": "draft",
  "kind": "operation",
  "date": "2017-05-02T00:00:00Z",
  "publisher": "Epic",
  "contact": [
    {
      "telecom": [
        {
          "system": "email",
          "value": "smater@epic.com"
        }
      ]
    }
  ],
  "description": "Returns a healthcare directory for a given healthcare organization.  This operation accepts a lastDownloaded field.  Given this date, it returns an organization's entire shareable directory.  This can include Practitioners, PractitionerRoles, Locations, Organizations, HealthCareServices, and Endpoints.  The server can return these resources in any order, and the client must be able to handle that.  References in the bundle must be relative, and the bundle may include duplicative data.   Previous work in this area has been done by the Argonauts, and can be found at: http://build.fhir.org/ig/argonautproject/provider-directory/",
  "code": "directory",
  "system": true,
  "type": false,
  "instance": false,
  "parameter": [
    {
      "name": "lastDownloaded",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "The last time the Healthcare Directory was queried.  Can be used for versioning.  If nothing has changed in the directory since it was last downloaded, no data will be returned to the client.  If data has changed, the full directory will be returned to the client.",
      "type": "dateTime"
    },
    {
      "name": "directory",
      "use": "out",
      "min": 0,
      "max": "1",
      "documentation": "A collections Bundle of Practitioner, PractitionerRole, Location, Organization, HealthCareService, and Endpoint resources.  These are the contents of an organization's sharable directory.  If errors occur during the download, an OperationOutcome will be returned in the bundle.",
      "type": "Resource"
    },
    {
      "name": "next",
      "use": "out",
      "min": 0,
      "max": "1",
      "documentation": "A pointer to the next page.",
      "type": "string"
    }
  ]
}