API documentation for Paymo 3
JavaScript PHP Python

README.md

Paymo is a project management software for small and medium businesses that allows you to manage projects from start to finish.

This is the official Paymo API.

Paymo API

The Paymo is a RESTful API that uses JSON/XML for serialization.

Accepted request types (HTTP verbs) are: GET, POST, PUT, DELETE.

Making a request

The API base URL is https://app.paymoapp.com/api/. It is SSL only. There is no way to use the API over unsecure http:// protocol.

An example request using curl for retrieving the list of clients may look like this:

curl -u email:password
  -H 'Accept: application/json'
  https://app.paymoapp.com/api/clients

Updating a client using curl my look like:

curl -u email:password
  -H 'Accept: application/json'
  -d "name=updated%20name"
  https://app.paymoapp.com/api/clients/12345

See sample code examples on how to make a request to the API.

Authentication

Read the authentication guide for more details.

Request and response content types

Paymo API supports JSON as well as XML for data serialization, as well as specific types such as PDF, XLS for reports, invoices, estimates.

Read more about content types.

Response codes and error handling

The Paymo API will return a 2xx status code for successful requests. The 4xx error means an error on the user side. And the 5xx errors are returned when the Paymo service is having trouble processing your request.

The response in case of error will contain an error message to help you fix it.

You may want to consult a reference for HTTP Status codes.

Rate limiting

If you exceed the rate limit, you'll get a 429 Too Many Requests response and for all following requests until the limit expires. A header Retry-After will also be returned and will represent the number of seconds you should wait before making the next request.

API endpoints

Data formats

For a sample and an explanation of each endpoint object, see individual endpoint pages.

Filtering

If you want to filter the response of listings, you can do so by supplying the where parameter in the request URL.

Read more about response filtering

Including related content

If you want a response to include additional information about an object, you can do so by supplying the include or partial_include parameters in the request URL.

Read more about additional includes

Help us make it better

Please tell us how we can make the API better. If you have a specific feature request or if you found a bug, please use GitHub issues. Fork these docs and send a pull request with improvements.

Webhooks

Webhooks allow for 3rd party integrations.

By creating a webhook you create a link between an event in Paymo (e.g. adding a task) and a URL that will be notified by Paymo when the event occurs.

Read more about webhooks