May 14 News: New Terms of Service! hide
Our Terms of Service have been written! By using or accessing Catalyst, you agree to be bound by these terms. You may read the full document here.
This page tells you how to use Catalyst's API to do awesome things!
Catalyst's API is based around a HTTPS/REST API, and operates through GET and POST operations. Your client must support both of these methods as well as TLS v1.2.
All API endpoints are based off of our base URL: https://catalystapp.co/api/. From there, endpoints are separated by scope (user, artist, commission, etc.) then method (create, delete, reorder, etc.), then further parameters if required.
All requests should contain your authorization headers (see below), as well as a JSON payload which contains parameters
A ? before a parameter name means that it is optional, and a ? before a reponse parameter name means that it may be omitted from the response. The ? is NOT part of the parameter.
A ? before a type indicates that it may be null.
All proper endpoints (not 301, 404, or similar) will return a JSON object. This object will contain the following keys:
Generic error codes
We have many internal error codes which may mean different things, however 99999 is likely the only one you will see.
In order to use our API, contact us at firstname.lastname@example.org for credentials. Please include your Catalyst username, name of your app, and a description of what you intend to do.
Requests may take up to one week to be processed.
Upon creation of your app, you will be assigned a set of four tokens: a client ID which identifies your app, a client secret which verifies ownership of the app, an access token which authenticates a user (the one we provide will be your own), and an access secret (additional verification)
All requests to our API must contain the following headers:
Example: Client: v8ayeztxskdm8x0sm,xm0xzvm3jncdjsm1iejasjkfv8mkktbyrmzakegcwnc9pmw107fbmy3zbwls
Example: User: 4yt43e1wbgzt1397wcbpv249v51vroh2doc8uhte,2s9wc0nr9d7z17hh6943d66e5br06pnrpt6f3noz42mc9vsep43rg7nf7xai
Our API can return a lot of different response codes, depending on what happened.
Gets either the current user or one specified by their username