{"id":1462,"date":"2018-06-20T10:58:12","date_gmt":"2018-06-20T10:58:12","guid":{"rendered":"https:\/\/2018.brighton.wordcamp.org\/?post_type=wcb_session&#038;p=1462"},"modified":"2018-07-04T15:19:09","modified_gmt":"2018-07-04T15:19:09","slug":"using-the-rest-api-for-wordpress-driven-apps","status":"publish","type":"wcb_session","link":"https:\/\/brighton.wordcamp.org\/2018\/session\/using-the-rest-api-for-wordpress-driven-apps\/","title":{"rendered":"Using the REST API for WordPress-driven Apps"},"content":{"rendered":"<p>The WordPress REST API lets you move data in and out of WordPress &#8211; enabling integrations with any other client application or data consumer. We&#8217;ll guide you on how to design, create and execute custom endpoints in the REST API to enable complex integrations for multiple resources and clients.<\/p>\n<p>In this workshop, we&#8217;ll create a fictitious project &#8211; we&#8217;ll be outsourcing the development of the app, whilst we focus on creating and providing the data from WordPress. We&#8217;ll start by designing the required data models and a communication protocol to transfer from server to client &#8211; then we&#8217;ll document our requirements to pass on to our outsourced app provider.<\/p>\n<p>Once we receive the app back from our provider &#8211; ready to accept data &#8211; we&#8217;ll build the backend implementation to covers proper data models and custom REST API endpoints.<\/p>\n<p>Attendees will learn how to design their WordPress backend to properly power a mobile app as well as how to putting together requirements that allow them to outsource non-WordPress development work for the custom client.<\/p>\n<p><strong><span class=\"m_2677104128316663826gmail-s1\">Workshop Length: <\/span><\/strong><span class=\"m_2677104128316663826gmail-s1\">3<\/span><span class=\"m_2677104128316663826gmail-s1\">hrs<\/span><\/p>\n<p><strong>Requirements<\/strong><br \/>\nAttendees are assumed to have a working WordPress development environment where they can develop and test a custom plugin, and have a git client that they can use to clone a git repository and switch branches.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The WordPress REST API lets you move data in and out of WordPress &#8211; enabling integrations with any other client application or data consumer. We&#8217;ll guide you on how to design, create and execute custom endpoints in the REST API to enable complex integrations for multiple resources and clients. In this workshop, we&#8217;ll create a &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/brighton.wordcamp.org\/2018\/session\/using-the-rest-api-for-wordpress-driven-apps\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Using the REST API for WordPress-driven Apps&#8221;<\/span><\/a><\/p>\n","protected":false},"author":9878447,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1534599900,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[1403,1623],"footnotes":""},"session_track":[919799],"session_category":[144],"class_list":["post-1462","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-workshop-2","wcb_session_category-development"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9ygjE-nA","session_date_time":{"date":"August 18, 2018","time":"1:45 pm"},"session_speakers":[{"id":"1403","slug":"alain-schlesser","name":"Alain Schlesser","link":"https:\/\/brighton.wordcamp.org\/2018\/speaker\/alain-schlesser\/"},{"id":"1623","slug":"sean-blakeley","name":"Sean Blakeley","link":"https:\/\/brighton.wordcamp.org\/2018\/speaker\/sean-blakeley\/"}],"session_cats_rendered":"Development","_links":{"self":[{"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/1462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/types\/wcb_session"}],"author":[{"embeddable":true,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/users\/9878447"}],"version-history":[{"count":3,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/1462\/revisions"}],"predecessor-version":[{"id":1826,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/sessions\/1462\/revisions\/1826"}],"speakers":[{"embeddable":true,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/speakers\/1403"},{"embeddable":true,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/speakers\/1623"}],"wp:attachment":[{"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/media?parent=1462"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/session_track?post=1462"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/brighton.wordcamp.org\/2018\/wp-json\/wp\/v2\/session_category?post=1462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}