Printmotor API

API

Printmotor API provides a RESTful HTTPS JSON interface for sending print orders to production and delivery. This documentation describes the usage of this API.

Please don't hesitate to contact us in case of questions!

Questions? Sign up? Contact us!

API endpoints

Overview

This server API documentation is a draft for Printmotor Server API.

Endpoints

  • Production: https://api.printmotor.io/api/v1
  • Development: https://test.printmotor.io/api/v1

Authentication

There are two things that needs to be told to Printmotor API in order to perform successful requests:

  1. Which service you are using
  2. Who are you

Service recognition

You may define more than one service in Printmotor. Each service has their own user database, own print layouts and own products. For example one could define services "Post card service" and "Poster service" to printmotor, and while performing requests to Printmotor these services must be determined. This is done by setting a request header to all incoming requests:

                X-Printmotor-Service: servicepublicidentificator

User authentication and authorization

Most of the endpoints are available only for registered users. When sending requests to Printmotor, it's a good practice to define user information to all requests even if they were open to public.

For each controlled request, you must provide a authentication with basic authentication. That is, each request must hold a username-password as base64 encoded in Authentication-HTTP request header.

How to get username and password

We're currently on private beta, request your access from support@printmotor.io. In near future we'll launch web based registration.

Error handling

API provides corresponding HTTP status code based on request status.

Billing

In server API all billing is done postpaid: Printmotor will send a bill to you monthly basis. Each user order that's sent to Printmotor will automatically go into production, and delivered to customer.

When you agree to terms of the service (currently available via email) you agree that each request will actually get printed and shipped to customer.

Customization

Currently you can define offline paper type, size and orientation and dynamic fields. In future this is available via web based interface too. But basically you can do a layout with changing text, PDF, image and so on - when performing a order you just define dynamic values as request variables and Printmotor takes care of the rest