Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This document contains an example of how to use the Post a Zero-or-Multiple-Contacts Story API documentation to create a story

...

A story that tags only 1 beneficiary (contact)

Step

Postman call

Postman response

Equivalent content or screenshot of the page in the front-end

  1. Authenticate

localhost:3000/api/v2/users/sign_in?user[email]=soft.dave99@gmail.com&user[password]=123456

Code Block
{
    "user_id": 2044,
    "email": "soft.dave99@gmail.com",
    "authentication_token": "b7c+D5o0joNRXMVNycN696yJZkuWshy4Zw66qWSJ--tT63Ev/FYFl00rCr--WomZk6tiLoXtapKgB/EtZA=="
}

2. Get projects: because every story must be created within a project, you must get the projects before you can create your first story. (You do not need to do this each time you create a story)

3. Get project's story categories:because every story is created using a Story Category, you must get the Story Categories associated with the project that the story will belong to before you create your first story. (You do not need to do this each time you create a story)

4. Get story categories: because if getting the project’s story categories does not tell you the metrics and fields (i.e. survey questions) that are within the story categories themselves, you will need to get the survey questions by getting the Story Category before you create your first story. (You do not need to do this each time you create a story)

5. Get metrics? Get fields?

6. Get project beneficiaries: because if you are creating a story about a beneficiary, you need to know which beneficiaries are in the project that the story belongs to. (You do not need to do this each time you create a story)

7. Post story

localhost:3000/api/v2/stories
header:

{“X-User-Token”: b7c+D5o0joNRXMVNycN696yJZkuWshy4Zw66qWSJ--tT63Ev/FYFl00rCr--WomZk6tiLoXtapKgB/EtZA==,
“X-User-Token”: “soft.dave99@gmail.com“}


body_parameters:
{ "beneficiary_ids": [78820], "case_ids": [], "custom_fields": {}, "story": { "story_format": "old", "story_group": "change_created", "project_id": 2882, "source_of_story": "android_mobile_app", "story_category_id": 3509, "text": "test story create" }, "story_change_beneficiaries": [], "story_changes": [], "story_indicator_beneficiary": [] }

=====================================

One Participant

=====================================

body parameters

Code Block
{
    "story": {
        "story_group": "change_created", 
        "story_format": "old", 
        "project_id": "572", 
        "story_category_id": "841", 
        "source_of_story": "android_mobile_app", 
        "text": "case test", 
        "created_at": "2022-05-24", 
        "story_changes_attributes": {
            "45048d65": {
                "change_id": "276", 
                "number": "5"
            }, 
            "05d83e67": {
                "change_id": "274", 
                "number": "4"
            },
            "0509f592": {
                "change_id": "260",
                "number": "6"
            }
        }
    }, 
    "beneficiaries": ["160498"], 
    "case_ids": ["96"], 
    "custom_fields": {
        "352": "1991-02-21", 
        "353": "11:30", 
        "177": "Lunawada", 
        "354": "11:45", 
        "4": "2022-05-24", 
        "190": "ajay@gmail.com", 
        "324": "Hello Everyone"
    }, 
    "story_indicator_beneficiaries": {
        "78b138d1": {
            "indicator_id": "577",
            "indicator_type": "scale",
            "outcome_id": "528",
            "sub_ratio_id": ["927"]
        }, 
        "45ebc5de": {
            "indicator_id": "578", 
            "indicator_type": "scale", 
            "outcome_id": "528", 
            "sub_ratio_id": ["930"]
        }, 
        "18c5bdb9": {
            "indicator_id": "363", 
            "indicator_type": "value", 
            "outcome_id": "224", 
            "number": "3"
        }, 
        "b1a328d1": {
            "indicator_id": "364", 
            "indicator_type": "binary", 
            "outcome_id": "224", 
            "binray_indicator_value": "on"
        }, 
        "47e3dad5": {
            "indicator_id": "8", 
            "indicator_type": "binary", 
            "outcome_id": "2", 
            "binray_indicator_value": "on"
        }, 
        "8f0e789b": {
            "indicator_id": "455", 
            "indicator_type": "value", 
            "outcome_id": "271", 
            "number": "7"
        }
    }
}

Code Block
{
    "id": 190282,
    "text": "test story create",
    "number": "0",
    "approved": true,
    "story_group": "change_created",
    "location": null,
    "project_id": 2882,
    "charity_id": null,
    "story_category_id": 3509,
    "edited_by": 2044,
    "user_id": 2044,
    "updated_at": "2022-05-16T19:22:44.353+01:00",
    "created_at": "2022-05-16T19:22:41.000+01:00",
    "actual_created_at": "2022-05-16T19:22:41.573+01:00",
    "beneficiary_ids": [
        78820
    ]
}

=====================================

One Participant

=====================================

postman response

Code Block
{
    "id": 127311,
    "text": "case test",
    "number": "0",
    "approved": true,
    "story_group": "change_created",
    "location": null,
    "project_id": 572,
    "charity_id": null,
    "story_category_id": 841,
    "edited_by": 190,
    "user_id": 190,
    "updated_at": "2022-05-24T13:32:07.923+01:00",
    "created_at": "2022-05-24T13:32:05.000+01:00",
    "actual_created_at": "2022-05-24T13:32:05.718+01:00",
    "beneficiary_ids": [
        160498
    ],
    "case_ids": [
        96
    ],
    "custom_fields": [
        {
            "id": 352,
            "name": "test date 2",
            "type": "date",
            "value": "1991-02-21"
        },
        {
            "id": 353,
            "name": "test time. 1",
            "type": "time",
            "value": "11:30"
        },
        {
            "id": 177,
            "name": "Location",
            "type": "text",
            "value": "Lunawada"
        },
        {
            "id": 354,
            "name": "test time 2",
            "type": "time",
            "value": "11:45"
        },
        {
            "id": 4,
            "name": "Date founded",
            "type": "date",
            "value": "2022-05-24"
        },
        {
            "id": 190,
            "name": "Email",
            "type": "text",
            "value": "ajay@gmail.com"
        },
        {
            "id": 324,
            "name": "Ideas suggested by the participant",
            "type": "text",
            "value": "Hello Everyone"
        }
    ],
    "story_indicator_beneficiaries": [
        {
            "id": 33101,
            "beneficiary_id": 160498,
            "indicator_id": 577,
            "indicator_type": "scale",
            "sub_ratio_id": 927,
            "outcome_id": 528
        },
        {
            "id": 33102,
            "beneficiary_id": 160498,
            "indicator_id": 578,
            "indicator_type": "scale",
            "sub_ratio_id": 930,
            "outcome_id": 528
        },
        {
            "id": 33103,
            "beneficiary_id": 160498,
            "indicator_id": 363,
            "indicator_type": "value",
            "number": 3.0,
            "outcome_id": 224
        },
        {
            "id": 33104,
            "beneficiary_id": 160498,
            "indicator_id": 364,
            "indicator_type": "binary"
        },
        {
            "id": 33105,
            "beneficiary_id": 160498,
            "indicator_id": 8,
            "indicator_type": "binary"
        },
        {
            "id": 33106,
            "beneficiary_id": 160498,
            "indicator_id": 455,
            "indicator_type": "value",
            "number": 7.0,
            "outcome_id": 271
        }
    ],
    "story_change_beneficiaries": [
        {
            "id": 36774,
            "beneficiary_id": 160498,
            "change_id": 276
        },
        {
            "id": 36775,
            "beneficiary_id": 160498,
            "change_id": 274
        },
        {
            "id": 36776,
            "beneficiary_id": 160498,
            "change_id": 260
        }
    ],
    "story_changes": [
        {
            "id": 37477,
            "change_id": 276,
            "number": 5
        },
        {
            "id": 37478,
            "change_id": 274,
            "number": 4
        },
        {
            "id": 37479,
            "change_id": 260,
            "number": 6
        }
    ]
}

One Participant Story Created ScreenShot

Example of how to create a story using the 'Post a Single-Contact Story API' 'Post a Zero-or-Multiple-Contacts Story API'

Example 2: a story that tags several beneficiaries

...

Step

...

Postman call

...

Postman response

...

Equivalent content or page in the front-end

...

  1. Authenticate

...

2. Get projects

...

3 Get project's story categories

...

4 Get story categories

...

5 Get metrics? Get fields?

...

6 Get project beneficiaries

...

7 Post story

...

8Get story

Troubleshooting

A note on indicator formatting

...