Parameters

Pagination

Endpoints that returns data in paginated format, by default paginate every 15 records. You may pass a parameter to paginate custom number of records using paginate=250 in the request

Basics

Certain routes allow you to query responses more efficiently, include relationships or sort and filter data. Queries can be stacked on top of each other. You can specify multiple unique operators.

TypeOperatorDescription

Relationships

include=relationship

Include relation with record

Filters

filter[key]=value

Filter based on key value

Sorting

sort[key]=asc

Sort based on key value

Dates

date=Date1,Date2

Filter between two dates

Relationships

Relationships are objects that have some sort of associations / coherence with each other. Certain endpoints support custom relations that are loaded if specified. (See example below)

For instance, if you want to retrieve users with all their payments, you may specify it in the request with ?include=payments, this will return all users with their respected payments. You can specify more than one relation separating them with a comma "," ?include=address,payments,emails`

Example: (Retrieve users with their payments)

curl "https://wemx.app/api/v1/users?include=payments" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

Filters

Filters allow you to refine the data that you want returned. Supported filters are specified on the API endpoint under "Available Filters". Filters can be passed inside the endpoint ?filter[key]=value

Example 1: (Retrieve all subscribed users)

curl "https://wemx.app/api/v1/users?filter[is_subscribed]=0" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

This request returns all users subscribed to emails

Example 2: (Retrieve subscribed & online users)

curl "https://wemx.app/api/v1/users?filter[is_subscribed]=0&filter[is_online]=1" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

Sorting

Sorting helps you sort records alphabetically or depending on the date. Sorting parameters can be specified like so: ?sort[key]=operator The supported operators are asc, desc, random

Example 1: (Retrieve latest users based on when they were created)

curl "https://wemx.app/api/v1/users?sort[created_at]=desc" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

Example 2: (Retrieve latest users with the highest balance)

curl "https://wemx.app/api/v1/users?sort[created_at]=desc&sort[balance]=desc" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

Dates

Dates allow you to filter records between two dates, or commonly used dates. The commonly used dates include today, yesterday, 3days, 7days, 14days, 30days, 90days

To filter records based on dates, you can pass the following parameter ?date=30days this will return all records created within the last 30 days. You can also pass a custom date range using ?date=01-01-2024,01-01-2025

curl "https://wemx.app/api/v1/users?date=30days" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer apikey' \
  -X GET

Last updated