The following documentation lays out: the structure of the API, how authentication and authorization is handled, details on pagination and a downloadable json for rapid testing.
All Momentify APIs are accessed via the following base URL:
https://api.momentifyapp.com/v1/[api name]
Versioning
The segment /v1/ indicates the current API version (version 1).
When a new version is released, this will be incremented to /v2/, and all endpoints will be updated synchronously.
Authentication
Momentify API uses OAuth 2.0 Client Credentials Grant for authenticating server-to-server requests. This method allows your application to obtain an access token by exchanging a client ID and client secret. All subsequent data requests are made with this provided token.
Request Token
Token requests are made to the following token issuer endpoint with required headers and body parameters.
POST https://api.momentifyapp.com/v1/oauth/token
Headers
Key | Value | Description |
|
| Required. Base64-encoded client credentials |
|
| Required |
(Optional) |
| Recommended |
Body Parameters
Parameter | Type | Required | Description |
|
| β Yes | Must be |
Example
Request
curl -X POST https://api.momentifyapp.com/v1/oauth/token
-H "Authorization: Basic $(echo -n 'YOUR_CLIENT_ID:YOUR_CLIENT_SECRET' | base64)"
-H "Content-Type: application/x-www-form-urlencoded"
-d "grant_type=client_credentials"
Successful Response (200 OK)
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 3600
}Error Response Example (401)
{
"code": "401",
"message": "Invalid client credentials"
}Usage
Include the returned access_token in the Authorization header for all subsequent API requests:
curl https://api.momentifyapp.com/v1/events
-H "Authorization: Bearer ACCESS_TOKEN"
Notes
Access tokens typically expire after 1 hour (
expires_in: 3600).You can safely cache the token until it expires to avoid repeated authentication requests.
If your client credentials are compromised, revoke them immediately through the API Management portal.
Response Codes
Code | Meaning | Description |
200 OK | β Success | The request was successful and data is returned. |
400 Bad Request | β οΈ Invalid Parameters | One or more request parameters were invalid. |
401 Unauthorized | π Missing or Invalid Key | The authorization header is missing or invalid. |
403 Forbidden | π« Access Denied | The token is valid but does not have permission to access this resource. |
404 Not Found | β Resource Missing | The requested endpoint or data could not be found. |
429 Too Many Requests | π Rate Limit Exceeded | Too many requests in a short period. Try again later. |
500 Internal Server Error | π₯ Server Error | An unexpected error occurred on the server. |
Pagination
Many list-based endpoints (like sessions) use standard pagination parameters:
limit β The number of records to return.
offset β The number of records to skip (default: 0).
To fetch subsequent pages, increment the offset by the number of items returned. For example:
GET /v1/sessions?limit=1000&offset=1000
API Download
We use hoppscotch for testing our endpoints and the attached json file will allow you to quickly jump in and start calling the endpoints. If you are using postman, follow this guide to import this json file.
