Skip to content
This repository has been archived by the owner on Nov 8, 2018. It is now read-only.
Janice Niemeir edited this page Jan 25, 2018 · 3 revisions

Mission

Systers is an international community for all women involved in the technical aspects of computing. We welcome the participation of women technologists of all ages and at any stage of their studies or careers.

We engage our community by contributing to open source, collaborating with the global community, and learning/enhancing our coding skills. We are committed to providing a safe, positive online community for our many volunteers that offer their skills, time, and commitment to our projects.

In order to engage with the community, you can sign up on Systers Open Source Slack.

Code of Conduct

A primary goal of Systers is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe, and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).

See the full Code of Conduct and the Reporting Guidelines.

MACC API Documentation

This documentation is for the API that MACC uses to communicate with other mobile applications.

URLs

  1. URL to store users of MACC -/api/users
  2. URL to store users of Malaria app -/api/malari_users
  3. URL to store infoHub posts related to Malaria -/api/malaria_posts
  4. URL to store PCSA posts by categories

URL to store MACC users - /api/users

Properties and Definitions:

  • url: stores the URL representing the profile of the user
  • username: String field to store username
  • email: email field to store email ID of the user
  • id: integer field, auto incremented

Methods:

  POST
  {
    "url": {
      "type": "field",
      "required": false,
      "read_only": true
    },
    "username": {
      "type": "string",
      "required": true,
      "read_only": false,
      "label": "username",
      "help_text": "Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters",
      "max_length": 30
    },
    "email": {
      "type": "email", 
      "required": false,
      "read_only": false,
      "label": "email address",
      "max_length": 75
    },
    "id": {
      "type": "integer",
      "required": false,
      "read_only": true,
      "label": "ID"
    }
  }
  GET - (example)
  {
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
      {
        "url": "http://localhost:8001/api/users/2/",
        "username": "qwer",
        "email": "[email protected]",
        "id": 2
      },
      {
        "url": "http://localhost:8001/api/users/1/",
        "username": "admin",
        "email": "[email protected]",
        "id": 1
      }
    ]
  }

URL to store users of Malaria app - /api/malari_users

Properties and Definitions:

  • name: String field, Name of the user
  • email: Email field, email ID of the user
  • age: Integer field, age of the user
  • medicineType: String field, medicine name for reminders
  • id: Integer field, auto increment

Methods:

  GET - (example)
  {
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
      {
        "name": "Name1",
        "email": "[email protected]",
        "age": 50,
        "medicineType": "med1",
        "id": 1
      },
      {
        "name": "Name2",
        "email": "[email protected]",
        "age": 51,
        "medicineType": "med2",
        "id": 2
      }
    ]
  }
  POST - 
  {
    "name": {
      "type": "string",
      "required": true,
      "read_only": false,
      "label": "name",
      "max_length": 200
    },
    "email": {
      "type": "email",
      "required": true,
      "read_only": false,
      "label": "email",
      "max_length": 254
    },
    "age": {
      "type": "integer",
      "required": true,
      "read_only": false,
      "label": "age"
    },
    "medicineType": {
      "type": "string",
      "required": true,
      "read_only": false,
      "label": "medicineType",
      "max_length": 100
    },
    "id": {
      "type": "integer",
      "required": false,
      "read_only": true,
      "label": "ID"
    }
  }

URL to store infoHub posts related to Malaria - /api/malaria_posts

Properties and Definitions:

  • owner: Integer field, userid of the MACC user
  • title_post: String field, Title for the post
  • description_post: String field, description for the post
  • created: DateTime field, time when post was created
  • updated: DateTime field, time when post was published
  • id: Integer field, auto increment

Methods:

  GET - (example)
  {
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
      {
        "owner": 2,
        "title_post": "Test 1",
        "description_post": "This is test for malaria posts",
        "created": "2016-08-12T13:36:52.213Z", 
        "updated": "2016-08-12T13:36:52.213Z",
        "id": 1
      }
    ]
  }

URL to store infoHub posts related to PCSA - /api/pcsa_posts

Properties and Definitions:

  • owner: Integer field, userid of the MACC user
  • title: String field, Title for the post
  • description: String field, description for the post
  • created: DateTime field, time when post was created
  • id: Integer field, auto increment

Methods:

  GET - (example)
  {
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
      {
        "owner": 2,
        "title": "Test 1 ",
        "description": "This is the first test post for PCSA API testing.",
        "created": "2016-08-12T15:52:22.379Z", 
        "id": 1
      },
      {
        "owner": 2,
        "title": "Test 2",
        "description": "This is the second test for API testing on PCSA.",
        "created": "2016-08-12T15:54:02.635Z",
        "id": 2
      }
    ]
  }

Authentication for the API - The API is authenticated by using the correct username and password.