Create an API token and make your first request
The Swimlane public API lets your own scripts, n8n or Make read and write your contacts, lists, tags and pipelines. This guide creates a token and runs a first request in under five minutes.
Before you start
- You need access to Swimlane (an active subscription on your organization) to create a token.
- Open the organization you want the API to work on at least once in the app. A token always acts on the organization you last used (see Switch between organizations).
Create a token
- Click Settings at the bottom of the left sidebar.
- In the Integrations group, open API.
- In the API Tokens card, click Add Token.
- Give it a Token Name that says where it will be used, for example "n8n – HubSpot sync".
- Click Create Token.
- Copy the Generated Token with the copy button. It starts with
wpa_. - Click Done.
The full token is shown only once. Store it in a password manager or as a credential in your automation tool. If you lose it, delete it and create a new one.
Make your first request
The API lives at https://api.getswimlane.com, and every endpoint starts with /v1. Send your token in the Authorization header:
curl "https://api.getswimlane.com/v1/contacts?per_page=2" \
-H "Authorization: Bearer wpa_your_token_here"
You get the most recent contacts of your organization, newest first:
{
"meta": {
"total": 1284,
"perPage": 2,
"currentPage": 1,
"lastPage": 642,
"firstPage": 1,
"firstPageUrl": "/?page=1",
"lastPageUrl": "/?page=642",
"nextPageUrl": "/?page=2",
"previousPageUrl": null
},
"data": [
{
"uuid": "3f0c5b1e-8d2a-4c1e-9f5b-2a7d6e1c9b40",
"firstName": "Jane",
"lastName": "Doe",
"email": null,
"headline": "Head of Sales at Acme",
"location": "Lyon, France",
"linkedinId": "jane-doe-42",
"archived": false,
"listUuids": ["b8e2…"],
"companyUuids": ["41aa…"],
"tagIds": [12],
"pipelineStageUuid": null,
"createdAt": "2026-09-01T08:15:22.000+00:00",
"updatedAt": "2026-09-12T16:40:03.000+00:00"
}
]
}
Contacts carry a few more fields than shown here. The full list is in Swimlane public API reference.
Then try a write, for example creating a list:
curl -X POST "https://api.getswimlane.com/v1/lists" \
-H "Authorization: Bearer wpa_your_token_here" \
-H "Content-Type: application/json" \
-d '{"name": "Webinar attendees"}'
Explore every endpoint
The interactive documentation is at https://api.getswimlane.com/docs. Click Authorize, paste your token, and you can run requests from the page.
Follow your API usage
Back in Settings → API, the API Usage card lists your recent calls with the method, path, status code, duration and date. It is the quickest way to see why an automation fails.
Good to know
- Rate limit: 100 requests per minute per Swimlane user. All your tokens share this budget. Each response tells you where you stand with the
X-RateLimit-Limit,X-RateLimit-RemainingandX-RateLimit-Resetheaders (the reset is a Unix timestamp in seconds). Past the limit you get429withrate_limit.exceeded. - Pagination:
pageandper_pageon list endpoints.per_pagedefaults to 50 and is capped at 100. - Tokens last four years, then expire. To revoke one earlier, click the bin icon next to it in API Tokens. It is deleted at once, without a confirmation step.
- Only tokens from Settings → API work. They are tied to you: everyone in your team who needs the API creates their own.
- Changes made through the API don't trigger webhooks. Webhook events come from actions in the app and from Swimlane's own imports.
Troubleshooting
401"Invalid or missing API token": the header is missing, the token was deleted or expired, or it is not awpa_token.403organization.required: your account has no organization selected. Log in to the app and open your organization, then retry.404resource.not_found: the uuid doesn't exist in the organization the token acts on. Check that you last used the right organization in the app.422validation.failed: the body is invalid. Theerrorsarray names the field.
