REST API v1

API Documentation

Integrate 99 Limes lost & found data into your own systems. Use the REST API to list items, submit lost reports, and query claims programmatically.

Base URL

https://api.99limes.com.au/api/v1/

All endpoints require orgId and venueId as query parameters.

Authentication

Pass your API key via the Authorization header:

Authorization: Bearer YOUR_API_KEY

Alternatively, pass it as a query parameter: ?apiKey=YOUR_API_KEY

Note: Venues with public browsing enabled allow unauthenticated GET /items requests. All other endpoints require authentication.

Endpoints

GET /api/v1/items

List active lost & found items for a venue.

ParameterTypeDescription
orgIdstringOrganisation ID (required)
venueIdstringVenue ID (required)
statusstringFilter by status: active, pending, claimed, returned
typestringFilter by type: found or lost
limitnumberMax results (default 100, max 500)

Example request:

curl "https://api.99limes.com.au/api/v1/items?orgId=ORG_ID&venueId=VENUE_ID&status=active" \
  -H "Authorization: Bearer YOUR_API_KEY"

Example response:

{
  "items": [
    {
      "id": "abc123",
      "title": "Black iPhone 15",
      "description": "Found near main stage",
      "type": "found",
      "status": "active",
      "categoryName": "Electronics",
      "lookupCode": "FV-EL-00042",
      "location": "Main Stage",
      "images": [{ "url": "...", "thumbnailUrl": "..." }],
      "reportedAt": "2026-04-20T10:30:00.000Z",
      "createdAt": "2026-04-20T10:30:00.000Z",
      "updatedAt": "2026-04-20T10:30:00.000Z"
    }
  ],
  "count": 1
}

GET /api/v1/items/:itemId

Get a single item by its ID.

curl "https://api.99limes.com.au/api/v1/items/ITEM_ID?orgId=ORG_ID&venueId=VENUE_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"

POST /api/v1/items

Create a new lost item report. Requires API key authentication.

FieldTypeDescription
titlestringItem name (required)
descriptionstringDescription of the item
typestringlost or found (default: lost)
categoryNamestringCategory (e.g. "Electronics")
locationstringWhere the item was lost
reporterNamestringName of the person reporting
reporterEmailstringEmail of the reporter
curl -X POST "https://api.99limes.com.au/api/v1/items?orgId=ORG_ID&venueId=VENUE_ID" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Blue North Face Backpack",
    "description": "Left near entrance gate around 3pm",
    "type": "lost",
    "categoryName": "Bags & Wallets",
    "location": "Gate 2",
    "reporterName": "Jane Smith",
    "reporterEmail": "jane@example.com"
  }'

GET /api/v1/claims

List claims for a venue. Always requires API key authentication.

ParameterTypeDescription
statusstringFilter: submitted, approved, rejected, collected
limitnumberMax results (default 100, max 500)

Error Codes

CodeMeaning
400Missing required parameters
401Invalid or missing API key
404Resource not found
405Method not allowed
500Internal server error

Rate Limits

The API is subject to Firebase Cloud Functions rate limits. For high-volume integrations, please contact support@appmajik.com.

Getting Your API Key

To obtain your API key, contact our support team at support@appmajik.com. API keys are issued per venue and can be revoked at any time.