> For the complete documentation index, see [llms.txt](https://docs.digit.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digit.org/health/ph-v1.7/design/architecture/low-level-design/registries/attendance.md).

# Attendance

Description of the attendance service

## Overview

The Attendance Service is a comprehensive back-end solution designed to support health campaigns by providing efficient and transparent attendance management. It facilitates the streamlined tracking of health campaign workers, volunteers, and contractors, ensuring accurate participation records and enabling informed decision-making.

Note: Deletion of attendees from the system is not recommended, even in cases where participation in the campaign has ceased. Attendance records should instead reflect the status of absent for all days following the departure. This practice ensures the integrity of attendance data, preserves historical records, and supports accurate reporting and auditing processes.

Key functionalities include:

* Maintaining attendance registers.
* Enrolling and managing individuals.
* Creating, updating, and searching attendance logs.
* Managing staff permissions for attendance-related operations.

## API Specifications

**Base Path:** /health-attendance/

### API Contract Link

[https://editor.swagger.io/?url=https://raw.githubusercontent.com/egovernments/DIGIT-Works/f525b183782a353812f7e2432a2989a86c498810/backend/attendance/Attendance-Service-1.0.0.yaml](#api-contract-link)

## Data Model

### DB Schema Diagram

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/4fIh5Wi8EwIMDOONPlfi/attendance_db.png" alt=""><figcaption><p>Attendance with Offline Enablement of Logs</p></figcaption></figure>

## Web Sequence Diagrams

#### Attendance Register

{% tabs %}
{% tab title="Create" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/UAwsdycJ9mtRIwDA2Gxk/Attendance-Register%20Create(1).png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Update" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/d0HluBUa0eNB7EHXZ8b6/Attendance-Register%20Update.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Search" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/wZc3UwybOiI4tZW8ywes/register_search.png" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

#### Staff

{% tabs %}
{% tab title="Create" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/NyMsm4mOYuzMw4aOfIgr/Staff%20Create.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Update/Delete" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/SGz7AFu5B9k9oqh57ZJW/Screenshot%202024-03-04%20at%2011.58.48%20AM.png" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

#### Attendee

{% tabs %}
{% tab title="Create" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/ffJQDVVSKKMnj2AJhJ0G/Screenshot%202024-03-04%20at%2012.00.02%20PM.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Delete" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/ByiwyRZwScCrUoyyjglE/Screenshot%202024-03-04%20at%2012.00.39%20PM.png" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

#### Attendance Log

{% tabs %}
{% tab title="Create" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/94cFfDSx3iwyQa0cnODT/Screenshot%202024-03-04%20at%2012.01.41%20PM.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Update" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/NGFiSwbzWy1bkRVWWuNA/Screenshot%202024-03-04%20at%2012.02.11%20PM.png" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Search" %}

<figure><img src="https://content.gitbook.com/content/ugLvZh3s3IGcc8JYqNN7/blobs/Z706X2RJzWYiA4J3FYa2/Attendance%20Log%20Search.png" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.digit.org/health/ph-v1.7/design/architecture/low-level-design/registries/attendance.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
