RescueLink API (1.0.0)

Download OpenAPI specification:Download

API documentation for RescueLink System, an emergency resource allocation platform. The RescueLink API facilitates secure access to endpoints for user management, inventory control, delivery tracking, and notifications.

Onboarding

User onboarding and authentication endpoints.

User Signup

Signs up a user using Google SSO via Okta and stores the role (victim, volunteer, coordinator).

Request Body schema: application/json
required
role
required
string
Enum: "victim" "volunteer" "coordinator"

Role of the user

Responses

Request samples

Content type
application/json
{
  • "role": "victim"
}

User

Endpoints for user profile management.

Get user profile by ID

Authorizations:
OAuth2api_key
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "userId": "string",
  • "name": "string",
  • "email": "user@example.com",
  • "phone": "string"
}

Update user profile

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
name
string
phone
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "phone": "string"
}

User logout

Logs the user out of the system.

Authorizations:
OAuth2api_key

Responses

Survivor

Endpoints for survivors to request help and track requests.

Submit a request for help

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
requestId
string
reqCategory
required
string
noOfMembers
required
integer
landmark
required
string
address
required
string
details
required
string

Responses

Request samples

Content type
application/json
{
  • "requestId": "string",
  • "reqCategory": "string",
  • "noOfMembers": 0,
  • "landmark": "string",
  • "address": "string",
  • "details": "string"
}

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "reqCategory": "string",
  • "noOfMembers": 0,
  • "landmark": "string",
  • "address": "string",
  • "details": "string"
}

Get all requests

Authorizations:
OAuth2api_key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

View request details by ID

Authorizations:
OAuth2api_key
path Parameters
requestId
required
string

Responses

Response samples

Content type
application/json
{
  • "requestId": "string",
  • "reqCategory": "string",
  • "noOfMembers": 0,
  • "landmark": "string",
  • "address": "string",
  • "details": "string"
}

Volunteer

Endpoints for volunteers to respond to requests.

Volunteer responds to deliver a request

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
requestId
required
string
volunteerId
required
string

Responses

Request samples

Content type
application/json
{
  • "requestId": "string",
  • "volunteerId": "string"
}

Delivery

Delivery management and tracking endpoints.

Track delivery status

Authorizations:
OAuth2api_key
path Parameters
deliveryId
required
string

Responses

Response samples

Content type
application/json
{
  • "deliveryId": "string",
  • "status": "Pending",
  • "eta": "2019-08-24T14:15:22Z"
}

Notifications

Notification service for alerts.

Send notification alerts

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
alertType
required
string
Enum: "Low Stock" "Fulfilled Request"
message
required
string

Responses

Request samples

Content type
application/json
{
  • "alertType": "Low Stock",
  • "message": "string"
}

Coordinator

Resource and allocation management for coordinators.

Retrieve a list of resources

Fetches all resources available in the inventory.

Authorizations:
OAuth2api_key

Responses

Response samples

Content type
application/json
{
  • "resources": [
    ]
}

Add a new resource

Creates a new resource in the inventory.

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
id
required
string

Unique identifier for the resource.

superClassification
required
string
Enum: "Basic Amenities" "Medical Support" "Sanitation Support" "Survival Amenities" "Rescue Support" "Evacuation Support" "Power and Communication Support"

The main category of the resource.

subClassification
required
string

The sub-category of the resource.

items
required
Array of strings

List of items included in the resource.

quantity
required
integer

The total quantity of the resource available.

availability
required
boolean

Indicates if the resource is currently available.

Responses

Request samples

Content type
application/json
{
  • "id": "res-12345",
  • "superClassification": "Medical Support",
  • "subClassification": "Physical Ailments",
  • "items": [
    ],
  • "quantity": 100,
  • "availability": true
}

Retrieve a resource by ID

Fetches a specific resource by its unique ID.

Authorizations:
OAuth2api_key
path Parameters
resourceId
required
string

Unique ID of the resource

Responses

Update an existing resource

Updates the details of an existing resource.

Authorizations:
OAuth2api_key
path Parameters
resourceId
required
string

Unique ID of the resource

Request Body schema: application/json
required
id
required
string

Unique identifier for the resource.

superClassification
required
string
Enum: "Basic Amenities" "Medical Support" "Sanitation Support" "Survival Amenities" "Rescue Support" "Evacuation Support" "Power and Communication Support"

The main category of the resource.

subClassification
required
string

The sub-category of the resource.

items
required
Array of strings

List of items included in the resource.

quantity
required
integer

The total quantity of the resource available.

availability
required
boolean

Indicates if the resource is currently available.

Responses

Request samples

Content type
application/json
{
  • "id": "res-12345",
  • "superClassification": "Medical Support",
  • "subClassification": "Physical Ailments",
  • "items": [
    ],
  • "quantity": 100,
  • "availability": true
}

Delete a resource

Removes a resource from the inventory.

Authorizations:
OAuth2api_key
path Parameters
resourceId
required
string

Unique ID of the resource

Responses

List all allocations

Retrieve a list of all allocation records.

Authorizations:
OAuth2api_key

Responses

Response samples

Content type
application/json
{
  • "allocations": [
    ]
}

Create a new allocation

Add a new allocation to the system.

Authorizations:
OAuth2api_key
Request Body schema: application/json
required
allocation_id
required
string <uuid>

Unique identifier for the allocation.

resource_id
required
string <uuid>

Unique identifier for the resource.

requester_id
required
string <uuid>

Unique identifier for the survivor requesting the resource.

provider_id
required
string <uuid>

Unique identifier for the volunteer providing the resource.

status
required
string
Enum: "Pending" "Fulfilled" "In Progress"

Current status of the allocation.

request_date
required
string <date-time>

Timestamp when the resource was requested.

delivery_date
string <date-time>

Timestamp when the resource is expected to be delivered or was delivered.

priority
required
integer

Priority of the allocation, based on factors such as need and last fulfillment time.

contact_info
required
string

Encrypted contact information of the requester.

Responses

Request samples

Content type
application/json
{
  • "allocation_id": "382c58cf-1df3-4a3e-982d-9827484a770a",
  • "resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
  • "requester_id": "5fe88a55-c92f-4e12-bd25-87bf15036ce9",
  • "provider_id": "fe3d49af-4061-436b-ae60-f7044f252a44",
  • "status": "Pending",
  • "request_date": "2019-08-24T14:15:22Z",
  • "delivery_date": "2019-08-24T14:15:22Z",
  • "priority": 0,
  • "contact_info": "string"
}

Retrieve an allocation by ID

Retrieve details of a specific allocation by ID.

Authorizations:
OAuth2api_key
path Parameters
allocation_id
required
string <uuid>

Unique ID of the allocation

Responses

Update an allocation

Update an allocation's details by ID.

Authorizations:
OAuth2api_key
path Parameters
allocation_id
required
string <uuid>

Unique ID of the allocation

Request Body schema: application/json
required
allocation_id
required
string <uuid>

Unique identifier for the allocation.

resource_id
required
string <uuid>

Unique identifier for the resource.

requester_id
required
string <uuid>

Unique identifier for the survivor requesting the resource.

provider_id
required
string <uuid>

Unique identifier for the volunteer providing the resource.

status
required
string
Enum: "Pending" "Fulfilled" "In Progress"

Current status of the allocation.

request_date
required
string <date-time>

Timestamp when the resource was requested.

delivery_date
string <date-time>

Timestamp when the resource is expected to be delivered or was delivered.

priority
required
integer

Priority of the allocation, based on factors such as need and last fulfillment time.

contact_info
required
string

Encrypted contact information of the requester.

Responses

Request samples

Content type
application/json
{
  • "allocation_id": "382c58cf-1df3-4a3e-982d-9827484a770a",
  • "resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
  • "requester_id": "5fe88a55-c92f-4e12-bd25-87bf15036ce9",
  • "provider_id": "fe3d49af-4061-436b-ae60-f7044f252a44",
  • "status": "Pending",
  • "request_date": "2019-08-24T14:15:22Z",
  • "delivery_date": "2019-08-24T14:15:22Z",
  • "priority": 0,
  • "contact_info": "string"
}

Delete an allocation

Deletes a specific allocation by ID.

Authorizations:
OAuth2api_key
path Parameters
allocation_id
required
string <uuid>

Unique ID of the allocation

Responses