Introduction

Welcome to the Canva API Technical Documentation. This documentation is designed to provide developers with the information needed to integrate their applications with Canva, a powerful graphic design platform. The Canva API allows developers to create and manage designs programmatically, providing access to a wide range of design tools and features.

Prerequisites

To use the Canva API, you need the following:

  1. Canva Developer Account: Create an account on the Canva Developer Portal to obtain API credentials.

  2. API Key and Secret: Generate API key and secret from the Developer Portal.

  3. Authentication: All API requests must be authenticated using OAuth 2.0.

Base URL for Canva API

Authentication

All requests to the Canva API must be authenticated using OAuth 2.0. You need to include an 'Authorization' header in your HTTP requests with the value 'Bearer YOUR_ACCESS_TOKEN'.

To obtain an access token, follow the OAuth 2.0 authentication process outlined in the Canva API Authentication Guide.



API Endpoints

User profile

  1. To get User Profile;

    GET /v1/me

    This returns the details of the authenticated user.

  2. To update User Profile;

    PUT /v1/me

    This updates the authenticated user's profile information..


Design Operations

  1. To create a Design:

    POST /v1/designs

    This will create a new design with specified parameters.

  2. To get design details:

    GET /v1/designs/:designId

    This will retrieve details about a specific design.

  3. To update design:

    PUT /v1/designs/:designId

    This will Update the content or settings of a design.

  4. To get delete design:

    DELETE /v1/designs/:designId

    This will delete a design by its ID.


Template Operations

  1. To get templates:

    GET /v1/templates

    This retrieves a list of available templates.

  2. To get template details:

    GET /v1/templates/:templateId

    This gets details about a specific template.


Export and Download

  1. To export design:

    POST /v1/designs/:designId/export

    This will export a design in different formats (PDF, PNG, etc.).

  2. To download a design:

    GET /v1/designs/:designId/download

    This will download the design file.



Rate Limiting

Canva API has rate limiting to ensure fair usage. Refer to the Rate Limiting Guide for details.


Error handling

If an error occurs, the API responds with an appropriate HTTP status code and a JSON object containing details about the error.

{ "error": { "code": "400", "message": "Invalid request", "details": "Additional error details" } }


Conclusion

Congratulations! You've now been introduced to the Canva API. Explore the capabilities of the API and start integrating Canva into your applications for a seamless graphic design experience. For more detailed information, refer to the Canva API Documentation.