Skip to content

jacrys/athenasharp

Repository files navigation

Jacrys.AthenaSharp - the C# library for the athenahealth More Disruption Please (MDP) API

Build Status .NET Join the chat at https://gitter.im/jacrys/AthenaSharp

(generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)

This C# SDK is automatically generated by the Swagger Codegen project and then ported to .NET 5.0:

  • API version: 2.0.0
  • SDK version: 1.0.1
  • Build package: io.swagger.codegen.v3.generators.dotnet.CSharpClientCodegen

Frameworks supported

  • .NET 5.0

Dependencies

The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742

Installation

Run the following command to generate the DLL

  • [Mac/Linux] /bin/sh build.sh
  • [Windows] build.bat

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using Jacrys.AthenaSharp.Api;
using Jacrys.AthenaSharp.Client;
using Jacrys.AthenaSharp.Model;

Packaging

A .nuspec is included with the project. You can follow the Nuget quickstart to create and publish packages.

This .nuspec uses placeholders from the .csproj, so build the .csproj directly:

nuget pack -Build -OutputDirectory out IO.Swagger.csproj

Then, publish to a local feed or other host and consume the new package via Nuget as usual.

Getting Started

using System;
using System.Diagnostics;
using Jacrys.AthenaSharp.Api;
using Jacrys.AthenaSharp.Client;
using Jacrys.AthenaSharp.Model;

namespace Example
{
    public class Example
    {
        public void main()
        {
            // Configure OAuth2 access token for authorization: defaultSecurityScheme
            Configuration.Default.AccessToken = "YOUR_ACCESS_TOKEN";

            var apiInstance = new DefaultApi();
            var body = new Body8(); // Body8 | 
            var practiceid = 56;  // int? | Id of the practice
            var apivariant = apivariant_example;  // string | Variant of the API
            var encounterid = 56;  // int? | The encounter ID.

            try
            {
                // Append text to the assessment note
                OperationStatusData result = apiInstance.AddEncounterAssesmentText(body, practiceid, apivariant, encounterid);
                Debug.WriteLine(result);
            }
            catch (Exception e)
            {
                Debug.Print("Exception when calling DefaultApi.AddEncounterAssesmentText: " + e.Message );
            }
        }
    }
}

Documentation for API Endpoints

All URIs are relative to https://api.platform.athenahealth.com

Class Method HTTP request Description
DefaultApi AddEncounterAssesmentText PUT /{apivariant}/{practiceid}/chart/encounter/{encounterid}/assessment Append text to the assessment note
DefaultApi BookAppointmentById PUT /{apivariant}/{practiceid}/appointments/{appointmentId} Set Information about a single patient's appointment by id
DefaultApi CancelAppointmentById PUT /{apivariant}/{practiceid}/appointments/{appointmentId}/cancel Cancel an existing appointment.
DefaultApi CreateAppointmentType POST /{apivariant}/{practiceid}/appointmenttypes Creates new appointment type
DefaultApi CreatePatient POST /{apivariant}/{practiceid}/patients Register new patient
DefaultApi CreatePatientLabResultDocument POST /{apivariant}/{practiceid}/patients/{patientId}/documents/labresult Create single lab result
DefaultApi CreatePatientProblem POST /{apivariant}/{practiceid}/chart/{patientId}/problems Adds problem to patient chart.
DefaultApi CreateProvider POST /{apivariant}/{practiceid}/providers Create new provider
DefaultApi DeleteAppointmentById DELETE /{apivariant}/{practiceid}/appointments/{appointmentId} Delete information about a single patient's appointment by id. Only open appointments can be deleted.
DefaultApi DeleteePatientLabResultDocument DELETE /{apivariant}/{practiceid}/patients/{patientId}/documents/labresult/{labResultId} Delete single lab result
DefaultApi GetAppointmentById GET /{apivariant}/{practiceid}/appointments/{appointmentId} Get Information about a single patient's appointment by id
DefaultApi GetAppointmentTypes GET /{apivariant}/{practiceid}/appointmenttypes Get appointment types
DefaultApi GetBookedAppointments GET /{apivariant}/{practiceid}/appointments/booked Get booked appointments
DefaultApi GetBookedAppointmentsFromMultipleDepartments GET /{apivariant}/{practiceid}/appointments/booked/multipledepartment Get booked appointments
DefaultApi GetClaims GET /{apivariant}/{practiceid}/claims Get claims
DefaultApi GetDepartments GET /{apivariant}/{practiceid}/departments Get department IDs
DefaultApi GetEncounter GET /{apivariant}/{practiceid}/chart/encounter/{encounterid} Get encounter by id.
DefaultApi GetEncounterAssesmentText GET /{apivariant}/{practiceid}/chart/encounter/{encounterid}/assessment Given an encounter returns the assessment text.
DefaultApi GetOpenAppointments GET /{apivariant}/{practiceid}/appointments/open Get open appointment slots
DefaultApi GetPatientAnalytes GET /{apivariant}/{practiceid}/chart/{patientId}/analytes Get patient medical history
DefaultApi GetPatientById GET /{apivariant}/{practiceid}/patients/{patientId} Get a patient by ID
DefaultApi GetPatientCcdaRecord GET /{apivariant}/{practiceid}/patients/{patientId}/ccda Get a patient CCDA informtion by ID
DefaultApi GetPatientEncounterOrders GET /{apivariant}/{practiceid}/chart/encounter/{encounterid}/orders Get encounters for the speicic patient.
DefaultApi GetPatientEncounters GET /{apivariant}/{practiceid}/chart/{patientId}/encounters Get encounters for the speicic patient.
DefaultApi GetPatientLabResultDocument GET /{apivariant}/{practiceid}/patients/{patientId}/documents/labresult/{labResultId} Get information about patient lab result document
DefaultApi GetPatientLabResultDocuments GET /{apivariant}/{practiceid}/patients/{patientId}/documents/labresult Get a patient lab results documents
DefaultApi GetPatientLabResults GET /{apivariant}/{practiceid}/chart/{patientId}/labresults Get patient medical history
DefaultApi GetPatientMedicalHistory GET /{apivariant}/{practiceid}/chart/{patientId}/medicalhistory Get patient medical history
DefaultApi GetPatientMedications GET /{apivariant}/{practiceid}/chart/{patientId}/medications Get patient medications
DefaultApi GetPatientProblems GET /{apivariant}/{practiceid}/chart/{patientId}/problems Get patient medical history
DefaultApi GetPatientSocialHistory GET /{apivariant}/{practiceid}/chart/{patientId}/socialhistory List of social history data for this patient.
DefaultApi GetPatientSurgicalHistory GET /{apivariant}/{practiceid}/chart/{patientId}/surgicalhistory Get patient medical history
DefaultApi GetPatientVitals GET /{apivariant}/{practiceid}/chart/{patientId}/vitals Get patient medical history
DefaultApi GetPatients GET /{apivariant}/{practiceid}/patients Search for patients
DefaultApi GetPracticeInfo GET /{apivariant}/{practiceid}/practiceinfo Get available practice IDs
DefaultApi GetProviderById GET /{apivariant}/{practiceid}/providers/{providerId} Get a providers
DefaultApi GetProviders GET /{apivariant}/{practiceid}/providers Get a providers
DefaultApi OpenNewAppointment POST /{apivariant}/{practiceid}/appointments/open Provides the ability to add new open appointment slots

Documentation for Models

Documentation for Authorization

defaultSecurityScheme

  • Type: OAuth
  • Flow: application
  • Authorization URL:
  • Scopes: