{"action":"created","comment":{"url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/comments/167923363","pull_request_review_id":96210035,"id":167923363,"diff_hunk":"@@ -0,0 +1,180 @@\n+<?php\n+declare(strict_types = 1);\n+\n+namespace App\\DsShared\\Helpers;\n+\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\Broadcast;\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\CollapsedBroadcast;\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\Episode;\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\ProgrammeContainer;\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\ProgrammeItem;\n+use BBC\\ProgrammesPagesService\\Domain\\Entity\\Service;\n+use Cake\\Chronos\\ChronosInterval;\n+use Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface;\n+\n+class SchemaHelper\n+{\n+    /** @var UrlGeneratorInterface */\n+    private $router;\n+\n+    public function __construct(UrlGeneratorInterface $router)\n+    {\n+        $this->router = $router;\n+    }\n+\n+    public function getSchemaForBroadcast(Broadcast $broadcast): array\n+    {\n+        $programmeItem = $broadcast->getProgrammeItem();\n+        $episode = $this->getSchemaForEpisode($programmeItem);\n+        $episode['publication'] = [\n+            '@type' => 'BroadcastEvent',\n+            'publishedOn' => $this->getSchemaForService($broadcast->getService()),\n+            'startDate' => $broadcast->getStartAt()->format(DATE_ATOM),\n+            'endDate' => $broadcast->getEndAt()->format(DATE_ATOM),\n+        ];\n+\n+        return $episode;\n+    }\n+\n+    public function getSchemaForCollapsedBroadcast(CollapsedBroadcast $collapsedBroadcast): array\n+    {\n+        $programmeItem = $collapsedBroadcast->getProgrammeItem();\n+        $episode = $this->getSchemaForEpisode($programmeItem);\n+        $publishedOn = [];\n+        foreach ($collapsedBroadcast->getServices() as $service) {\n+            $publishedOn[] = $this->getSchemaForService($service);\n+        }\n+        $episode['publication'] = [\n+            '@type' => 'BroadcastEvent',\n+            'publishedOn' => $publishedOn,\n+            'startDate' => $collapsedBroadcast->getStartAt()->format(DATE_ATOM),\n+            'endDate' => $collapsedBroadcast->getEndAt()->format(DATE_ATOM),\n+        ];\n+\n+        return $episode;\n+    }\n+\n+\n+    public function getSchemaForOnDemand(Episode $episode): array\n+    {\n+        $episodeContext = $this->getSchemaForEpisode($episode);\n+        $episodeContext['publication'] = [\n+            '@type' => 'OnDemandEvent',\n+            'publishedOn' => [\n+                '@type' => 'BroadcastService',\n+                'broadcaster' => $this->getSchemaForOrganisation(),\n+                'name' => 'iPlayer',\n+            ],\n+            'duration' => (string) ChronosInterval::seconds($episode->getDuration()),\n+            'url' => $this->router->generate('iplayer_play', ['pid' => $episode->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+        ];\n+        if ($episode->getStreamableFrom()) {\n+            $episodeContext['publication']['startDate'] = $episode->getStreamableFrom()->format(DATE_ATOM);\n+        }\n+        if ($episode->getStreamableUntil()) {\n+            $episodeContext['publication']['endDate'] = $episode->getStreamableUntil()->format(DATE_ATOM);\n+        }\n+\n+        return $episodeContext;\n+    }\n+\n+    public function getSchemaForSeries(ProgrammeContainer $programme): array\n+    {\n+        //@TODO this might be wrong. Check for b006mg4s, b007d61z and b007b4w2\n+        return [\n+            '@type' => $programme->isRadio() ? 'RadioSeries' : 'TVSeries',\n+            'image' => $programme->getImage()->getUrl(480),\n+            'description' => $programme->getShortSynopsis(),\n+            'identifier' => $programme->getPid(),\n+            'name' => $programme->getTitle(),\n+            'url' => $this->router->generate('find_by_pid', ['pid' => $programme->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+        ];\n+    }\n+\n+    public function prepare($schemaToPrepare, $isArrayOfContexts = false): array\n+    {\n+        if ($isArrayOfContexts) {\n+            $schema = [\n+                '@context' => 'http://schema.org',\n+                '@graph' => $schemaToPrepare,\n+            ];\n+            return $schema;\n+        }\n+\n+        $schemaToPrepare['@context'] = 'http://schema.org';\n+\n+        return $schemaToPrepare;\n+    }\n+\n+    private function getSchemaForEpisode(ProgrammeItem $programmeItem): array\n+    {\n+        $episode = [\n+            '@type' => $programmeItem->isRadio() ? 'RadioEpisode' : 'TVEpisode',\n+            'identifier' => $programmeItem->getPid(),\n+            'episodeNumber' => $programmeItem->getPosition(),\n+            'description' => $programmeItem->getShortSynopsis(),\n+            'datePublished' => $programmeItem->getReleaseDate(),\n+            'image' => $programmeItem->getImage()->getUrl(480),\n+            'name' => $programmeItem->getTitle(), //@TODO This will be JUST the episode name, or so we want the fully qualified name?\n+            'url' => $this->router->generate('find_by_pid', ['pid' => $programmeItem->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+        ];\n+        $parent = $programmeItem->getParent();\n+        if ($parent) {\n+            if ($parent->isTlec()) {\n+                $episode['partOfSeries'] = [\n+                    '@type' => $programmeItem->isRadio() ? 'RadioSeries' : 'TVSeries',\n+                    'name' => $parent->getTitle(),\n+                    'url' => $this->router->generate('find_by_pid', ['pid' => $parent->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+                ];\n+            } else {\n+                $episode['partOfSeries'] = [\n+                    '@type' => $programmeItem->isRadio() ? 'RadioSeries' : 'TVSeries',\n+                    'name' => $parent->getParent()->getTitle(),\n+                    'url' => $this->router->generate('find_by_pid', ['pid' => $parent->getParent()->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+                ];\n+                $episode['partOfSeason'] = [\n+                    '@type' => $programmeItem->isRadio() ? 'RadioSeason' : 'TVSeason',\n+                    'position' => $parent->getPosition(),\n+                    'name' => $parent->getTitle(),\n+                    'url' => $this->router->generate('find_by_pid', ['pid' => $parent->getPid()], UrlGeneratorInterface::ABSOLUTE_URL),\n+                ];\n+            }\n+        }\n+        return $episode;\n+    }\n+\n+    private function getSchemaForOrganisation(): array\n+    {\n+        return [\n+            '@type' => 'Organization',\n+            'legalName' => 'British Broadcasting Corporation',\n+            'logo' => 'http://ichef.bbci.co.uk/images/ic/1200x675/p01tqv8z.png',\n+            'name' => 'BBC',\n+            'url' => 'https://www.bbc.co.uk/',\n+        ];\n+    }\n+\n+    private function getSchemaForService(Service $service): array\n+    {\n+        $bbcContext = $this->getSchemaForOrganisation();\n+        $serviceContext = [\n+            '@type' => 'BroadcastService',\n+            'broadcaster' => $bbcContext,\n+            'name' => $service->getName(),\n+        ];\n+        $network = $service->getNetwork();\n+        // @TODO do we always want the network, or not if the name is the same as the service?\n+        if ($network !== null) {\n+            $networkContext = [\n+                '@type' => 'BroadcastService',\n+                'broadcaster' => $bbcContext,\n+                'name' => $network->getName(),\n+                'logo' => $network->getImage()->getUrl(480),\n+                // @TODO Do we want a URL here?","path":"src/DsShared/Helpers/SchemaHelper.php","position":172,"original_position":173,"commit_id":"1fb5dac22caa91b206b1fd638958a82d92b3d564","original_commit_id":"ded73be69e63cebaeea118426195b91d55d5a41b","user":{"login":"BjornTwachtmann","id":8199742,"avatar_url":"https://avatars0.githubusercontent.com/u/8199742?v=4","gravatar_id":"","url":"https://api.github.com/users/BjornTwachtmann","html_url":"https://github.com/BjornTwachtmann","followers_url":"https://api.github.com/users/BjornTwachtmann/followers","following_url":"https://api.github.com/users/BjornTwachtmann/following{/other_user}","gists_url":"https://api.github.com/users/BjornTwachtmann/gists{/gist_id}","starred_url":"https://api.github.com/users/BjornTwachtmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BjornTwachtmann/subscriptions","organizations_url":"https://api.github.com/users/BjornTwachtmann/orgs","repos_url":"https://api.github.com/users/BjornTwachtmann/repos","events_url":"https://api.github.com/users/BjornTwachtmann/events{/privacy}","received_events_url":"https://api.github.com/users/BjornTwachtmann/received_events","type":"User","site_admin":false},"body":"You could point to the BBC one homepage, but I'd probably just leave it TBH","created_at":"2018-02-13T16:35:17Z","updated_at":"2018-02-13T16:35:17Z","html_url":"https://github.com/bbc/programmes-frontend/pull/413#discussion_r167923363","pull_request_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/comments/167923363"},"html":{"href":"https://github.com/bbc/programmes-frontend/pull/413#discussion_r167923363"},"pull_request":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413"}},"in_reply_to_id":167855710},"pull_request":{"url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413","id":168836859,"html_url":"https://github.com/bbc/programmes-frontend/pull/413","diff_url":"https://github.com/bbc/programmes-frontend/pull/413.diff","patch_url":"https://github.com/bbc/programmes-frontend/pull/413.patch","issue_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/413","number":413,"state":"open","locked":false,"title":"PROGRAMMES-6202 Schedules Structured Data","user":{"login":"votemike","id":3957065,"avatar_url":"https://avatars3.githubusercontent.com/u/3957065?v=4","gravatar_id":"","url":"https://api.github.com/users/votemike","html_url":"https://github.com/votemike","followers_url":"https://api.github.com/users/votemike/followers","following_url":"https://api.github.com/users/votemike/following{/other_user}","gists_url":"https://api.github.com/users/votemike/gists{/gist_id}","starred_url":"https://api.github.com/users/votemike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/votemike/subscriptions","organizations_url":"https://api.github.com/users/votemike/orgs","repos_url":"https://api.github.com/users/votemike/repos","events_url":"https://api.github.com/users/votemike/events{/privacy}","received_events_url":"https://api.github.com/users/votemike/received_events","type":"User","site_admin":false},"body":"https://jira.dev.bbc.co.uk/browse/PROGRAMMES-6202\r\n","created_at":"2018-02-13T12:52:54Z","updated_at":"2018-02-13T16:35:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"470e08c8aad84ffe097396970d4421bbb602604b","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413/commits","review_comments_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413/comments","review_comment_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls/comments{/number}","comments_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/413/comments","statuses_url":"https://api.github.com/repos/bbc/programmes-frontend/statuses/1fb5dac22caa91b206b1fd638958a82d92b3d564","head":{"label":"bbc:PROGRAMMES-6202-schedules-structured-data","ref":"PROGRAMMES-6202-schedules-structured-data","sha":"1fb5dac22caa91b206b1fd638958a82d92b3d564","user":{"login":"bbc","id":828722,"avatar_url":"https://avatars1.githubusercontent.com/u/828722?v=4","gravatar_id":"","url":"https://api.github.com/users/bbc","html_url":"https://github.com/bbc","followers_url":"https://api.github.com/users/bbc/followers","following_url":"https://api.github.com/users/bbc/following{/other_user}","gists_url":"https://api.github.com/users/bbc/gists{/gist_id}","starred_url":"https://api.github.com/users/bbc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbc/subscriptions","organizations_url":"https://api.github.com/users/bbc/orgs","repos_url":"https://api.github.com/users/bbc/repos","events_url":"https://api.github.com/users/bbc/events{/privacy}","received_events_url":"https://api.github.com/users/bbc/received_events","type":"Organization","site_admin":false},"repo":{"id":85298889,"name":"programmes-frontend","full_name":"bbc/programmes-frontend","owner":{"login":"bbc","id":828722,"avatar_url":"https://avatars1.githubusercontent.com/u/828722?v=4","gravatar_id":"","url":"https://api.github.com/users/bbc","html_url":"https://github.com/bbc","followers_url":"https://api.github.com/users/bbc/followers","following_url":"https://api.github.com/users/bbc/following{/other_user}","gists_url":"https://api.github.com/users/bbc/gists{/gist_id}","starred_url":"https://api.github.com/users/bbc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbc/subscriptions","organizations_url":"https://api.github.com/users/bbc/orgs","repos_url":"https://api.github.com/users/bbc/repos","events_url":"https://api.github.com/users/bbc/events{/privacy}","received_events_url":"https://api.github.com/users/bbc/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/bbc/programmes-frontend","description":"The new frontend for bbc.co.uk/programmes","fork":false,"url":"https://api.github.com/repos/bbc/programmes-frontend","forks_url":"https://api.github.com/repos/bbc/programmes-frontend/forks","keys_url":"https://api.github.com/repos/bbc/programmes-frontend/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bbc/programmes-frontend/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bbc/programmes-frontend/teams","hooks_url":"https://api.github.com/repos/bbc/programmes-frontend/hooks","issue_events_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/events{/number}","events_url":"https://api.github.com/repos/bbc/programmes-frontend/events","assignees_url":"https://api.github.com/repos/bbc/programmes-frontend/assignees{/user}","branches_url":"https://api.github.com/repos/bbc/programmes-frontend/branches{/branch}","tags_url":"https://api.github.com/repos/bbc/programmes-frontend/tags","blobs_url":"https://api.github.com/repos/bbc/programmes-frontend/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bbc/programmes-frontend/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bbc/programmes-frontend/git/refs{/sha}","trees_url":"https://api.github.com/repos/bbc/programmes-frontend/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bbc/programmes-frontend/statuses/{sha}","languages_url":"https://api.github.com/repos/bbc/programmes-frontend/languages","stargazers_url":"https://api.github.com/repos/bbc/programmes-frontend/stargazers","contributors_url":"https://api.github.com/repos/bbc/programmes-frontend/contributors","subscribers_url":"https://api.github.com/repos/bbc/programmes-frontend/subscribers","subscription_url":"https://api.github.com/repos/bbc/programmes-frontend/subscription","commits_url":"https://api.github.com/repos/bbc/programmes-frontend/commits{/sha}","git_commits_url":"https://api.github.com/repos/bbc/programmes-frontend/git/commits{/sha}","comments_url":"https://api.github.com/repos/bbc/programmes-frontend/comments{/number}","issue_comment_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/comments{/number}","contents_url":"https://api.github.com/repos/bbc/programmes-frontend/contents/{+path}","compare_url":"https://api.github.com/repos/bbc/programmes-frontend/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bbc/programmes-frontend/merges","archive_url":"https://api.github.com/repos/bbc/programmes-frontend/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bbc/programmes-frontend/downloads","issues_url":"https://api.github.com/repos/bbc/programmes-frontend/issues{/number}","pulls_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls{/number}","milestones_url":"https://api.github.com/repos/bbc/programmes-frontend/milestones{/number}","notifications_url":"https://api.github.com/repos/bbc/programmes-frontend/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bbc/programmes-frontend/labels{/name}","releases_url":"https://api.github.com/repos/bbc/programmes-frontend/releases{/id}","deployments_url":"https://api.github.com/repos/bbc/programmes-frontend/deployments","created_at":"2017-03-17T10:19:20Z","updated_at":"2018-02-09T12:27:28Z","pushed_at":"2018-02-13T16:02:09Z","git_url":"git://github.com/bbc/programmes-frontend.git","ssh_url":"git@github.com:bbc/programmes-frontend.git","clone_url":"https://github.com/bbc/programmes-frontend.git","svn_url":"https://github.com/bbc/programmes-frontend","homepage":"","size":2464,"stargazers_count":11,"watchers_count":11,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"archived":false,"open_issues_count":3,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":3,"open_issues":3,"watchers":11,"default_branch":"develop"}},"base":{"label":"bbc:develop","ref":"develop","sha":"f0d485c96adc50bed3a91eeeaf0495900ffbfa95","user":{"login":"bbc","id":828722,"avatar_url":"https://avatars1.githubusercontent.com/u/828722?v=4","gravatar_id":"","url":"https://api.github.com/users/bbc","html_url":"https://github.com/bbc","followers_url":"https://api.github.com/users/bbc/followers","following_url":"https://api.github.com/users/bbc/following{/other_user}","gists_url":"https://api.github.com/users/bbc/gists{/gist_id}","starred_url":"https://api.github.com/users/bbc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbc/subscriptions","organizations_url":"https://api.github.com/users/bbc/orgs","repos_url":"https://api.github.com/users/bbc/repos","events_url":"https://api.github.com/users/bbc/events{/privacy}","received_events_url":"https://api.github.com/users/bbc/received_events","type":"Organization","site_admin":false},"repo":{"id":85298889,"name":"programmes-frontend","full_name":"bbc/programmes-frontend","owner":{"login":"bbc","id":828722,"avatar_url":"https://avatars1.githubusercontent.com/u/828722?v=4","gravatar_id":"","url":"https://api.github.com/users/bbc","html_url":"https://github.com/bbc","followers_url":"https://api.github.com/users/bbc/followers","following_url":"https://api.github.com/users/bbc/following{/other_user}","gists_url":"https://api.github.com/users/bbc/gists{/gist_id}","starred_url":"https://api.github.com/users/bbc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bbc/subscriptions","organizations_url":"https://api.github.com/users/bbc/orgs","repos_url":"https://api.github.com/users/bbc/repos","events_url":"https://api.github.com/users/bbc/events{/privacy}","received_events_url":"https://api.github.com/users/bbc/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/bbc/programmes-frontend","description":"The new frontend for bbc.co.uk/programmes","fork":false,"url":"https://api.github.com/repos/bbc/programmes-frontend","forks_url":"https://api.github.com/repos/bbc/programmes-frontend/forks","keys_url":"https://api.github.com/repos/bbc/programmes-frontend/keys{/key_id}","collaborators_url":"https://api.github.com/repos/bbc/programmes-frontend/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/bbc/programmes-frontend/teams","hooks_url":"https://api.github.com/repos/bbc/programmes-frontend/hooks","issue_events_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/events{/number}","events_url":"https://api.github.com/repos/bbc/programmes-frontend/events","assignees_url":"https://api.github.com/repos/bbc/programmes-frontend/assignees{/user}","branches_url":"https://api.github.com/repos/bbc/programmes-frontend/branches{/branch}","tags_url":"https://api.github.com/repos/bbc/programmes-frontend/tags","blobs_url":"https://api.github.com/repos/bbc/programmes-frontend/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/bbc/programmes-frontend/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/bbc/programmes-frontend/git/refs{/sha}","trees_url":"https://api.github.com/repos/bbc/programmes-frontend/git/trees{/sha}","statuses_url":"https://api.github.com/repos/bbc/programmes-frontend/statuses/{sha}","languages_url":"https://api.github.com/repos/bbc/programmes-frontend/languages","stargazers_url":"https://api.github.com/repos/bbc/programmes-frontend/stargazers","contributors_url":"https://api.github.com/repos/bbc/programmes-frontend/contributors","subscribers_url":"https://api.github.com/repos/bbc/programmes-frontend/subscribers","subscription_url":"https://api.github.com/repos/bbc/programmes-frontend/subscription","commits_url":"https://api.github.com/repos/bbc/programmes-frontend/commits{/sha}","git_commits_url":"https://api.github.com/repos/bbc/programmes-frontend/git/commits{/sha}","comments_url":"https://api.github.com/repos/bbc/programmes-frontend/comments{/number}","issue_comment_url":"https://api.github.com/repos/bbc/programmes-frontend/issues/comments{/number}","contents_url":"https://api.github.com/repos/bbc/programmes-frontend/contents/{+path}","compare_url":"https://api.github.com/repos/bbc/programmes-frontend/compare/{base}...{head}","merges_url":"https://api.github.com/repos/bbc/programmes-frontend/merges","archive_url":"https://api.github.com/repos/bbc/programmes-frontend/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/bbc/programmes-frontend/downloads","issues_url":"https://api.github.com/repos/bbc/programmes-frontend/issues{/number}","pulls_url":"https://api.github.com/repos/bbc/programmes-frontend/pulls{/number}","milestones_url":"https://api.github.com/repos/bbc/programmes-frontend/milestones{/number}","notifications_url":"https://api.github.com/repos/bbc/programmes-frontend/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/bbc/programmes-frontend/labels{/name}","releases_url":"https://api.github.com/repos/bbc/programmes-frontend/releases{/id}","deployments_url":"https://api.github.com/repos/bbc/programmes-frontend/deployments","created_at":"2017-03-17T10:19:20Z","updated_at":"2018-02-09T12:27:28Z","pushed_at":"2018-02-13T16:02:09Z","git_url":"git://github.com/bbc/programmes-frontend.git","ssh_url":"git@github.com:bbc/programmes-frontend.git","clone_url":"https://github.com/bbc/programmes-frontend.git","svn_url":"https://github.com/bbc/programmes-frontend","homepage":"","size":2464,"stargazers_count":11,"watchers_count":11,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"archived":false,"open_issues_count":3,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":3,"open_issues":3,"watchers":11,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413"},"html":{"href":"https://github.com/bbc/programmes-frontend/pull/413"},"issue":{"href":"https://api.github.com/repos/bbc/programmes-frontend/issues/413"},"comments":{"href":"https://api.github.com/repos/bbc/programmes-frontend/issues/413/comments"},"review_comments":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413/comments"},"review_comment":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/bbc/programmes-frontend/pulls/413/commits"},"statuses":{"href":"https://api.github.com/repos/bbc/programmes-frontend/statuses/1fb5dac22caa91b206b1fd638958a82d92b3d564"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"BjornTwachtmann"}}