My client has an account on Canvas LMS where he is running his institute, he wants a wordpress website that should be connected to his canvas LMS account and he should be able to handle requests from his website, like if a user, after logging in, changes something in his profile then it should changed in the main application (canvas LMS) too, he should be able to edit courses, view courses etc on his website. I am not sure from where to start this, I have searched the internet but couldn't find anything relating Canvas LMS API with worpdress. If someone can point me in the direction from where to start that would be a huge favor. I am new to APIs with wordpress and dont know how to authenticate or get access token and then how to send requests to the API using wordpress.

Thanks in advance


Generally speaking, you will need to create a plugin to accomplish the connection and manipulate data. It looks like Canvas uses JSON in their API. There is a good overview of handling JSON in PHP - the rest you will probably need to piece together from Canvas's API documentation. Before you get started, make sure both sites are running over HTTPS so you don't expose any sensitive information.

Since there are no Canvas-to-WordPress-specific tutorials available, you might also find it helpful to go through Google's OAuth 2.0 tutorial for practice in connecting using OAuth, and then work on connecting to Canvas. In my experience connecting is the hardest part. From there, piecing together requests becomes easier.

Out of curiosity, why is the client asking you to build a WordPress site that manipulates Canvas data? I work in higher ed and would love to hear more about their use case. Are they trying to provide a different front end for faculty?

  • 1
    Thanks for answering. It was a huge help. And my client wants to sale courses using a wordpress site, that's why i need to configure Canvas with WordPress :) – Syed Haris Ali Ghaznavi Mar 1 '17 at 11:26
  • You and your client may have an easier time of managing things if you use a WordPress LMS instead. That way everything is on a single site. Check out the Sensei plugin which works with WooCommerce. – WebElaine Mar 8 '17 at 15:22

Not the answer you're looking for? Browse other questions tagged or ask your own question.