frankk.

API Documentation

About frankk. APIs

frankk. APIs let users connect their apps with frankk. in a safe and simple way.

 

They help users manage recipients, create campaigns, work with files, and check account details using clear JSON requests and responses.

How authentication works

frankk. starts authentication with an API key.

 

Send your API key to POST /api/v1/account/login. If valid, the API returns:

  • token (short-lived access token)
  • refreshToken (longer-lived token)
  • refreshExpiry

 

Use the access token in the Authorization header as Bearer <token> for protected endpoints.

 

When the access token expires, call POST /api/v1/account/refresh with the current refreshToken. If the refresh token is valid, the API revokes the old refresh token and issues a new access token plus a new refresh token (token rotation). If the refresh token is invalid or expired, the API returns 401 Unauthorized.

Refresh tokens expire 7 days after issuance.

How to get an API key

Any frankk. user can generate an API key from Settings > API Settings by selecting Generate.

 

However, API access can only be used after an administrator enables API permissions for that user account.

 

Once generated, the API key should be stored securely, as it is required for authentication and may only be shown once in full.

 

If needed, the user can select Rotate to issue a new key, which immediately revokes the previous key.

API logging

API Logging lets you track how your integration calls frankk., so you can monitor usage and fix issues quickly.

 

What you can do

  • Enable logging for your company
  • Set logging duration and extend it when needed
  • Disable logging at any time
  • View API logs list and open log details
  • Filter logs by date, method, status code, and endpoint

 

What each log shows

  • Which endpoint was called and with which method
  • When the request happened and how long it took
  • Which status code was returned
  • Request/response information needed for troubleshooting

 

Business value

  • Detect and resolve integration issues faster
  • Validate API usage during onboarding and go-live
  • Monitor failed calls and improve reliability
  • Support operational reviews and audit checks
API standards

Headers and content

Include x-api-key where required by authentication flow. For secured endpoints, send Authorization: Bearer {access-token}. Use Content-Type: application/json for JSON requests and multipart/form-data for file uploads.

Rate limits

API requests are rate-limited per configured policy. If the threshold is exceeded, the API returns 429 Too Many Requests. Clients should retry with backoff.

Response and pagination

Standard responses use ApiResponse<T> with Success, Message, Data, and Errors. List endpoints typically return pagination metadata via PagedResult<T> fields such as Total, Offset, Limit, HasMore, and NextOffset.

Date, time, and file constraints

Date/time values are returned in API-defined string format and should be parsed by clients as date-time values. File endpoints support JSON/base64 and multipart upload patterns.

Base URL and versioning

All endpoints in this document are versioned under https://app.frankk.post/api/v1. Example: POST https://app.frankk.post/api/v1/account/login.

HTTP status code guide

frankk. API provides a secure and structured way to integrate with authentication, recipients, recipient groups, campaigns, templates, files, and account services.

 

All endpoints return standard HTTP status codes so integrations can clearly identify success, client-side issues, and server-side failures.

Note
Some business-rule outcomes may return 200 OK with a message in the response body, so always check response content (Success, Message, Errors) along with the HTTP status.

HTTP status code Description
200 OK

Request completed successfully.

202 Accepted

Request accepted for background/asynchronous processing.

400 Bad Request

Invalid input, missing fields, wrong format, or failed validation.

401 Unauthorized

Missing, invalid, or expired authentication credentials (API key, access token, or refresh token).

403 Forbidden

Authenticated, but not allowed to access this resource/action.

404 Not Found

Requested resource does not exist.

409 Conflict

Request conflicts with current resource state.

413 Payload Too Large

Request body or file is too large.

429 Too Many Requests

Rate limit exceeded.

500 Internal Server Error

Unexpected server-side error.

frankk.

optimise your mailing strategy today

get started
frankk.