NAV Navbar
shell

Introduction

Welcome to the Provide API. Provided here is all the documentation you need to orchestrate global blockchain networks and build revolutionary new decentralized applications and services using Provide.

Platform Overview

Provide is a scalable chain- and cloud-agnostic platform for deploying public, private or permissioned peer-to-peer infrastructure. Provide enables Web3 innovation with a suite of developer tools and modern APIs. Provide can help you or your organization experiment with and ultimately adopt DLT (distributed ledger technology) in a way that compliments your legacy enterprise architecture. Provide has a web UI and CLI to manage platform resources.

We are working to make our web experience suitable for bizdev and product owners. If you are a developer, you will likely want to work with the CLI.

Client Libraries

Client libraries are available on Github. The following repositories make our client libraries available to the community:

Authorization

Provide requires an API token to authorize the vast majority of platform requests. An API token is an encoded JWT and contains an identifier referencing the authorized entity as the subject (sub) in the claims. The encoded JWT token may also include an expiration (exp) and arbitrary data (data), among other standard JWT claims, and is signed using the RS256 algorithm. The authorized entity (i.e., the User or Application) may use the signed Token to access one or more platform resources. Unless otherwise noted, all API requests must include a header such as: Authorization: bearer <JWT>.

The bearer Authorization header is scoped to an authorized platform User or an Application as described above.

The encoded JWT is signed using the RS256 (RSA Signature with SHA-256) algorithm. The following public key can be used to verify the signature:

-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0yqdJMBej1X8WwMMkMZw
DV6zZzup4RHLcln0xfGSm6dMPBDM1G96fuHhOwH5+uU5MQHJP7RqW71Bu5dLIG8Z
RX+XyUtb0sxCV/7X27Nm/bKpDysaSWQ36reAmw5wVaB1SoFeN519FY5rhoCWmH3W
auBAHTzpjg57p7uR0XynYXf8NSGXlysWHppkppqwrPH64G6UZaB7SMl1PFfkJeqZ
zJpzBGYWsixdF1EjXn+Yz0mhUZO2OSPWifOuN7cpn3BuNqegg4iVdz5HDoQhJW7N
uRhf3buKd/mjat8XA3e2Rkrr2h835GloScJkj7I4BZUNkzKQuEK6C9xW/zJtbPqQ
RYEq84A1hMfSZ3G5HFe2JkqiyvXkFwS3qMc5Pur8tZSzBj6AYMoJJso/aOdphpR8
6MaaWXWTwvwfpZbMRqehOcsmQcNLF2gLJPuHzR5WtVCnWrDgvjsWyeDD1WISKusi
aOeHxZjS3Bjl4Imq48l1wi2eI/11F/Xg70F4FJaMYLVHJA2nsmBuuQ9UDYHHq876
clKvIvgIItzJcv9lnmjl1Jks1DwCUF3qF2ugYcs9A3EoEcNzhMgZNJ2j5OUzfx1E
bzVKkqoC9MQpZWXgqV0KQqKK4I3rMY+1hLqk4S4eF9ZAVlT33qfMzlf0qWTOcP1Z
i2dsm0fy4NxWxknlEn5/LhMCAwEAAQ==
-----END PUBLIC KEY-----

Pagination

Collection endpoints which return large datasets support the following pagination query parameters:

Query Param Description
page The 1-based page number being requested
rpp The results per page being requested

When no page and rpp parameters are provided in the query, sane defaults (i.e., page=1&rpp=25 will be applied based on the resource being requested.

An X-Total-Results-Count header is provided in the response as a hint indicating how many total results exist for the requested resource, all filters applied.

The Range and Content-Range entity headers are not currently supported for pagination.

Status Codes

The following status codes describe Provide API responses:

Status Code Meaning
200 OK The request was successful
201 Created The request was successful and a new entity was created
202 Accepted The request was successfully accepted and processing will complete asynchronously
204 No Content The request was successful but did not return a response
401 Unauthorized The request required an API Authorization header, or one was provided which could not be authenticated
403 Forbidden The supplied API Authorization header does not have permission to access the requested resource
404 Not Found Platform did not find the requested resource
429 Too Many Requests The request was not accepted due to exceeding the rate limit
500 Internal Server Error The request resulted in an internal error during processing
501 Not Implemented The requested resource is not implemented by the platform
503 Service Unavailable The request cannot be fulfiled due to temporary unavailability of a backend service

Rate Limits

We reserve the right to enforce rate limits on certain API calls in the future.

 

Microservices

Ident

Ident provides authentication, authorization, device and identity APIs for platform users and applications.

View the Ident docs here.

Goldmine

Goldmine provides peer-to-peer infrastructure orchestration and blockchain APIs to make it easy for developers and organizations to build and scale DLT applications.

View the Goldnine docs here.

Bookie

Bookie provides payments infrastructure including turnkey Connext payment hubs and simplified layer 2 middleware to make it easier to build and interact with state channel applications. Bookie is a state-of-the-art cross-border settlement platform.

View the Bookie docs here.

Tourguide

Documentation forthcoming.

Use-Cases

General Web3 Applications

Documentation forthcoming.

Payments Applications

Documentation forthcoming.

Identity Applications

Documentation forthcoming.

Enterprise Applications

Documentation forthcoming.