Skip to main content
Automate your entire Upwork workflow - discover new projects via your custom filters, track proposal analytics, manage invitations, and monitor Upwork profiles - all through one powerful API.
API access is included with the Agency plan.

Authentication

To use the Vollna API, you need to sign up for an account first. Follow these steps to obtain your API token:
  1. Create an account at vollna.com
  2. Go to your Dashboard
  3. Click your profile menu (top-right)
  4. Select “API Tokens”
  5. Generate a new API token
Your API token carries many privileges, so be sure to keep it secure! Do not share your API token in publicly accessible areas such as GitHub, client-side code, etc.
All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.
Include your API token in the X-API-TOKEN header with every request:

Rate Limiting

The Vollna API implements rate limiting of 5 requests per minute. API rate limits are essential for managing server load and ensuring consistent and reliable service for all users. By limiting the number of requests a user can make per minute, it helps prevent any single user from overloading the system, which can lead to slower response times or system outages, ensuring fair usage and availability of the service for everyone. When rate limits are exceeded, the API will return a 429 status code with the following response:
{
  "error": "Rate limit exceeded"
}

Credit System

To ensure fair usage and prevent abuse of the API, we implement a credit-based system for certain endpoints. Each API request to retrieve projects consumes credits based on the number of projects returned. This system helps maintain service quality and prevents unauthorized data scraping.
The credit system is designed to accommodate normal business operations while preventing abuse. Most agencies will find their monthly credit allocation more than sufficient for their needs.
When credits are depleted, the API will return a 402 status code with the following response:
{
  "error": "Insufficient credits",
  "credits_remaining": 0,
  "credits_reset_date": "2024-04-01T00:00:00Z"
}

Common Response Formats

Success Response

{
  "data": [...],
  "pagination": {
    "total": 100,
    "page": 1,
    "limit": 20,
    "pages": 5
  }
}

Error Response

{
  "error": "Error message"
}

Status Codes

Vollna uses standard HTTP response codes to indicate the success or failure of an API request. In general:
  • Codes in the 2xx range indicate success
  • Codes in the 4xx range indicate an error that failed given the information provided
CodeNameSummary
200OKEverything worked as expected
400Bad RequestThe request was unacceptable, often due to missing a required parameter
401UnauthorizedInvalid or missing API token provided in X-API-TOKEN header
402Payment RequiredTeam active subscription is required to perform the request
403ForbiddenThe API token doesn’t have permissions to perform the request
404Not FoundThe requested resource was not found
429Too Many RequestsThe request was rejected due to rate limiting (see Rate Limiting section)
500Internal Server ErrorThe request failed due to a server error