delete(); DB::table('api_endpoints')->delete(); $this->seedSummitEndpoints(); $this->seedMemberEndpoints(); $this->seedTeamEndpoints(); $this->seedTagsEndpoints(); $this->seedCompaniesEndpoints(); $this->seedGroupsEndpoints(); } /** * @param string $api_name * @param array $endpoints_info */ private function seedApiEndpoints($api_name, array $endpoints_info){ $api = EntityManager::getRepository(\App\Models\ResourceServer\Api::class)->findOneBy(['name' => $api_name]); if(is_null($api)) return; foreach($endpoints_info as $endpoint_info){ $endpoint = new ApiEndpoint(); $endpoint->setName($endpoint_info['name']); $endpoint->setRoute($endpoint_info['route']); $endpoint->setHttpMethod($endpoint_info['http_method']); $endpoint->setActive(true); $endpoint->setAllowCors(true); $endpoint->setAllowCredentials(true); $endpoint->setApi($api); foreach($endpoint_info['scopes'] as $scope_name){ $scope = EntityManager::getRepository(\App\Models\ResourceServer\ApiScope::class)->findOneBy(['name' => $scope_name]); if(is_null($scope)) continue; $endpoint->addScope($scope); } EntityManager::persist($endpoint); } EntityManager::flush(); } private function seedSummitEndpoints() { $current_realm = Config::get('app.url'); $this->seedApiEndpoints('summits', [ // summits array( 'name' => 'get-summits', 'route' => '/api/v1/summits', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-summit', 'route' => '/api/v1/summits/{id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-summit-entity-events', 'route' => '/api/v1/summits/{id}/entity-events', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), // attendees array( 'name' => 'get-attendees', 'route' => '/api/v1/summits/{id}/attendees', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-own-attendee', 'route' => '/api/v1/summits/{id}/attendees/me', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-attendee', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'delete-attendee', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteAttendeesData, $current_realm), ], ), array( 'name' => 'update-attendee', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteAttendeesData, $current_realm), ], ), array( 'name' => 'get-attendee-schedule', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/schedule', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'add-event-attendee-schedule', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/schedule/{event_id}', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'delete-event-attendee-schedule', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/schedule/{event_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'checking-event-attendee-schedule', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/schedule/{event_id}/check-in', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'add-attendee', 'route' => '/api/v1/summits/{id}/attendees', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteAttendeesData, $current_realm), ], ), array( 'name' => 'add-attendee-ticket', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/tickets', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteAttendeesData, $current_realm), ], ), array( 'name' => 'delete-attendee-ticket', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/tickets/{ticket_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteAttendeesData, $current_realm), ], ), // speakers array( 'name' => 'get-speakers', 'route' => '/api/v1/summits/{id}/speakers', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'add-speaker-by-summit', 'route' => '/api/v1/summits/{id}/speakers', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'update-speaker-by-summit', 'route' => '/api/v1/summits/{id}/speakers/{speaker_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'add-speaker-photo', 'route' => '/api/v1/speakers/{speaker_id}/photo', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'add-speaker', 'route' => '/api/v1/speakers', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'update-speaker', 'route' => '/api/v1/speakers/{speaker_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'delete-speaker', 'route' => '/api/v1/speakers/{speaker_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'get-all-speakers', 'route' => '/api/v1/speakers', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-speaker', 'route' => '/api/v1/speakers/{speaker_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'merge-speakers', 'route' => '/api/v1/speakers/merge/{speaker_from_id}/{speaker_to_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSpeakersData, $current_realm), ], ), array( 'name' => 'get-speaker-by-summit', 'route' => '/api/v1/summits/{id}/speakers/{speaker_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'add-speaker-feedback', 'route' => '/api/v1/summits/{id}/speakers/{speaker_id}/presentations/{presentation_id}/feedback', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), // events array( 'name' => 'get-events', 'route' => '/api/v1/summits/{id}/events', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-events-csv', 'route' => '/api/v1/summits/{id}/events/csv', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-published-events', 'route' => '/api/v1/summits/{id}/events/published', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-schedule-empty-spots', 'route' => '/api/v1/summits/{id}/events/published/empty-spots', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-unpublished-events', 'route' => '/api/v1/summits/{id}/events/unpublished', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-all-events', 'route' => '/api/v1/summits/events', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-all-published-events', 'route' => '/api/v1/summits/events/published', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-event', 'route' => '/api/v1/summits/{id}/events/{event_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-published-event', 'route' => '/api/v1/summits/{id}/events/{event_id}/published', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'add-event', 'route' => '/api/v1/summits/{id}/events', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteEventData, $current_realm)], ), array( 'name' => 'update-event', 'route' => '/api/v1/summits/{id}/events/{event_id}', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::WriteEventData, $current_realm)], ), array( 'name' => 'update-events', 'route' => '/api/v1/summits/{id}/events', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::WriteEventData, $current_realm)], ), array( 'name' => 'publish-event', 'route' => '/api/v1/summits/{id}/events/{event_id}/publish', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::PublishEventData, $current_realm)], ), array( 'name' => 'publish-events', 'route' => '/api/v1/summits/{id}/events/publish', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::PublishEventData, $current_realm)], ), array( 'name' => 'unpublish-event', 'route' => '/api/v1/summits/{id}/events/{event_id}/publish', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::PublishEventData, $current_realm)], ), array( 'name' => 'unpublish-events', 'route' => '/api/v1/summits/{id}/events/publish', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::PublishEventData, $current_realm)], ), array( 'name' => 'delete-event', 'route' => '/api/v1/summits/{id}/events/{event_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf('%s/summits/delete-event', $current_realm)], ), array( 'name' => 'add-event-feedback', 'route' => '/api/v1/summits/{id}/events/{event_id}/feedback', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'add-event-attachment', 'route' => '/api/v1/summits/{id}/events/{event_id}/attachment', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'add-event-feedback-v2', 'route' => '/api/v2/summits/{id}/events/{event_id}/feedback', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'update-event-feedback-v2', 'route' => '/api/v2/summits/{id}/events/{event_id}/feedback', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'get-event-feedback', 'route' => '/api/v1/summits/{id}/events/{event_id}/feedback/{attendee_id?}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'delete-rsvp', 'route' => '/api/v1/summits/{id}/attendees/{attendee_id}/schedule/{event_id}/rsvp', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), // locations [ 'name' => 'get-locations', 'route' => '/api/v1/summits/{id}/locations', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-location', 'route' => '/api/v1/summits/{id}/locations', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-location', 'route' => '/api/v1/summits/{id}/locations/{location_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'delete-location', 'route' => '/api/v1/summits/{id}/locations/{location_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'get-locations-metadata', 'route' => '/api/v1/summits/{id}/locations/metadata', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], // maps [ 'name' => 'add-location-map', 'route' => '/api/v1/summits/{id}/locations/{location_id}/maps', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-location-map', 'route' => '/api/v1/summits/{id}/locations/{location_id}/maps/{map_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'get-location-map', 'route' => '/api/v1/summits/{id}/locations/{location_id}/maps/{map_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'delete-location-map', 'route' => '/api/v1/summits/{id}/locations/{location_id}/maps/{map_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], // banners [ 'name' => 'get-location-banners', 'route' => '/api/v1/summits/{id}/locations/{location_id}/banners', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-location-banner', 'route' => '/api/v1/summits/{id}/locations/{location_id}/banners', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm), sprintf(SummitScopes::WriteLocationBannersData, $current_realm) ], ], [ 'name' => 'update-location-banner', 'route' => '/api/v1/summits/{id}/locations/{location_id}/banners/{banner_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm), sprintf(SummitScopes::WriteLocationBannersData, $current_realm) ], ], [ 'name' => 'delete-location-banner', 'route' => '/api/v1/summits/{id}/locations/{location_id}/banners/{banner_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm), sprintf(SummitScopes::WriteLocationBannersData, $current_realm) ], ], // venues [ 'name' => 'get-venues', 'route' => '/api/v1/summits/{id}/locations/venues', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-venue', 'route' => '/api/v1/summits/{id}/locations/venues', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-venue', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], // floors [ 'name' => 'get-venue-floor', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-venue-floor', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-venue-floor', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'delete-venue-floor', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], // rooms [ 'name' => 'get-venue-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/rooms/{room_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-venue-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/rooms', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-venue-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/rooms/{room_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'delete-venue-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/rooms/{room_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], // floor rooms [ 'name' => 'get-venue-floor-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}/rooms/{room_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-venue-floor-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}/rooms', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-venue-floor-room', 'route' => '/api/v1/summits/{id}/locations/venues/{venue_id}/floors/{floor_id}/rooms/{room_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], // external locations [ 'name' => 'get-external-locations', 'route' => '/api/v1/summits/{id}/locations/external-locations', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-external-location', 'route' => '/api/v1/summits/{id}/locations/external-locations', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-external-location', 'route' => '/api/v1/summits/{id}/locations/external-locations/{external_location_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'get-hotels', 'route' => '/api/v1/summits/{id}/locations/hotels', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-hotel', 'route' => '/api/v1/summits/{id}/locations/hotels', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-hotel', 'route' => '/api/v1/summits/{id}/locations/hotels/{hotel_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'get-airports', 'route' => '/api/v1/summits/{id}/locations/airports', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-airport', 'route' => '/api/v1/summits/{id}/locations/airports', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'update-airport', 'route' => '/api/v1/summits/{id}/locations/airports/{airport_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitData, $current_realm), sprintf(SummitScopes::WriteLocationsData, $current_realm) ], ], [ 'name' => 'get-location', 'route' => '/api/v1/summits/{id}/locations/{location_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-location-events', 'route' => '/api/v1/summits/{id}/locations/{location_id}/events', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-location-published-events', 'route' => '/api/v1/summits/{id}/locations/{location_id}/events/published', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], // event types [ 'name' => 'get-event-types', 'route' => '/api/v1/summits/{id}/event-types', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-event-types-csv', 'route' => '/api/v1/summits/{id}/event-types/csv', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-event-type-by-id', 'route' => '/api/v1/summits/{id}/event-types/{event_type_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-event-type', 'route' => '/api/v1/summits/{id}/event-types', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteEventTypeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'seed-default-event-types', 'route' => '/api/v1/summits/{id}/event-types/seed-defaults', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteEventTypeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'update-event-type', 'route' => '/api/v1/summits/{id}/event-types/{event_type_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteEventTypeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'delete-event-type', 'route' => '/api/v1/summits/{id}/event-types/{event_type_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteEventTypeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], //tracks [ 'name' => 'get-tracks', 'route' => '/api/v1/summits/{id}/tracks', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-tracks-csv', 'route' => '/api/v1/summits/{id}/tracks/csv', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-track-by-id', 'route' => '/api/v1/summits/{id}/tracks/{track_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-track', 'route' => '/api/v1/summits/{id}/tracks', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteTracksData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'update-track', 'route' => '/api/v1/summits/{id}/tracks/{track_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteTracksData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'delete-track', 'route' => '/api/v1/summits/{id}/tracks/{track_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteTracksData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], // track groups array( 'name' => 'get-track-groups', 'route' => '/api/v1/summits/{id}/track-groups', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-track-group', 'route' => '/api/v1/summits/{id}/track-groups/{track_group_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), //external orders array( 'name' => 'get-external-order', 'route' => '/api/v1/summits/{id}/external-orders/{external_order_id}', 'http_method' => 'GET', 'scopes' => [sprintf('%s/summits/read-external-orders', $current_realm)], ), array( 'name' => 'confirm-external-order', 'route' => '/api/v1/summits/{id}/external-orders/{external_order_id}/external-attendees/{external_attendee_id}/confirm', 'http_method' => 'POST', 'scopes' => [sprintf('%s/summits/confirm-external-orders', $current_realm)], ), //videos array( 'name' => 'get-presentation-videos', 'route' => '/api/v1/summits/{id}/presentations/{presentation_id}/videos', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'get-presentation-video', 'route' => '/api/v1/summits/{id}/presentations/{presentation_id}/video/{video_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ), array( 'name' => 'create-presentation-video', 'route' => '/api/v1/summits/{id}/presentations/{presentation_id}/videos', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteVideoData, $current_realm)], ), array( 'name' => 'update-presentation-video', 'route' => '/api/v1/summits/{id}/presentations/{presentation_id}/videos/{video_id}', 'http_method' => 'PUT', 'scopes' => [sprintf(SummitScopes::WriteVideoData, $current_realm)], ), array( 'name' => 'delete-presentation-video', 'route' => '/api/v1/summits/{id}/presentations/{presentation_id}/videos/{video_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::WriteVideoData, $current_realm)], ), //members array( 'name' => 'get-own-member', 'route' => '/api/v1/summits/{id}/members/{member_id}', 'http_method' => 'GET', 'scopes' => [sprintf('%s/me/read', $current_realm)], ), array( 'name' => 'get-own-member-favorites', 'route' => '/api/v1/summits/{id}/members/{member_id}/favorites', 'http_method' => 'GET', 'scopes' => [sprintf('%s/me/read', $current_realm)], ), array( 'name' => 'add-2-own-member-favorites', 'route' => '/api/v1/summits/{id}/members/{member_id}/favorites/{event_id}', 'http_method' => 'POST', 'scopes' => [sprintf('%s/me/summits/events/favorites/add', $current_realm)], ), array( 'name' => 'delete-rsvp-member', 'route' => '/api/v1/summits/{id}/members/{member_id}/schedule/{event_id}/rsvp', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ), array( 'name' => 'remove-from-own-member-favorites', 'route' => '/api/v1/summits/{id}/members/{member_id}/favorites/{event_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf('%s/me/summits/events/favorites/delete', $current_realm)], ), [ 'name' => 'get-own-member-schedule', 'route' => '/api/v1/summits/{id}/members/{member_id}/schedule', 'http_method' => 'GET', 'scopes' => [sprintf('%s/me/read', $current_realm)], ], [ 'name' => 'add-2-own-member-schedule', 'route' => '/api/v1/summits/{id}/members/{member_id}/schedule/{event_id}', 'http_method' => 'POST', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ], [ 'name' => 'remove-from-own-member-schedule', 'route' => '/api/v1/summits/{id}/members/{member_id}/schedule/{event_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf(SummitScopes::WriteSummitData, $current_realm)], ], // notifications [ 'name' => 'get-notifications', 'route' => '/api/v1/summits/{id}/notifications', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadNotifications, $current_realm) ], ], // promo codes [ 'name' => 'get-promo-codes', 'route' => '/api/v1/summits/{id}/promo-codes', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-promo-codes-csv', 'route' => '/api/v1/summits/{id}/promo-codes/csv', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-promo-code', 'route' => '/api/v1/summits/{id}/promo-codes/{promo_code_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-promo-code', 'route' => '/api/v1/summits/{id}/promo-codes', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WritePromoCodeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'delete-promo-code', 'route' => '/api/v1/summits/{id}/promo-codes/{promo_code_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WritePromoCodeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'update-promo-code', 'route' => '/api/v1/summits/{id}/promo-codes/{promo_code_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WritePromoCodeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'send-promo-code-mail', 'route' => '/api/v1/summits/{id}/promo-codes/{promo_code_id}/mail', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WritePromoCodeData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'get-promo-codes-metadata', 'route' => '/api/v1/summits/{id}/promo-codes/metadata', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], // summit speakers assistances [ 'name' => 'get-speaker-assistances-by-summit', 'route' => '/api/v1/summits/{id}/speakers-assistances', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'get-speaker-assistances-by-summit-csv', 'route' => '/api/v1/summits/{id}/speakers-assistances/csv', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'add-speaker-assistance', 'route' => '/api/v1/summits/{id}/speakers-assistances', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitSpeakerAssistanceData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'delete-speaker-assistance', 'route' => '/api/v1/summits/{id}/speakers-assistances/{assistance_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteSummitSpeakerAssistanceData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'get-speaker-assistance', 'route' => '/api/v1/summits/{id}/speakers-assistances/{assistance_id}', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm) ], ], [ 'name' => 'update-speaker-assistance', 'route' => '/api/v1/summits/{id}/speakers-assistances/{assistance_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteSummitSpeakerAssistanceData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], [ 'name' => 'send-speaker-assistance-mail', 'route' => '/api/v1/summits/{id}/speakers-assistances/{assistance_id}/mail', 'http_method' => 'POST', 'scopes' => [ sprintf(SummitScopes::WriteSummitSpeakerAssistanceData, $current_realm), sprintf(SummitScopes::WriteSummitData, $current_realm) ], ], ]); } private function seedMemberEndpoints(){ $current_realm = Config::get('app.url'); $this->seedApiEndpoints('members', [ // members [ 'name' => 'get-members', 'route' => '/api/v1/members', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/read', $current_realm)], ], [ 'name' => 'get-my-member', 'route' => '/api/v1/members/me', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/read/me', $current_realm)], ], [ 'name' => 'get-member-affiliations', 'route' => '/api/v1/members/{member_id}/affiliations', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/read', $current_realm)], ], [ 'name' => 'update-member-affiliation', 'route' => '/api/v1/members/{member_id}/affiliations/{affiliation_id}', 'http_method' => 'PUT', 'scopes' => [ sprintf(SummitScopes::WriteMemberData, $current_realm) ], ], [ 'name' => 'delete-member-affiliation', 'route' => '/api/v1/members/{member_id}/affiliations/{affiliation_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteMemberData, $current_realm) ], ], [ 'name' => 'delete-member-rsvp', 'route' => '/api/v1/members/{member_id}/rsvp/{rsvp_id}', 'http_method' => 'DELETE', 'scopes' => [ sprintf(SummitScopes::WriteMemberData, $current_realm) ], ] ] ); } private function seedTagsEndpoints(){ $current_realm = Config::get('app.url'); $this->seedApiEndpoints('tags', [ // members [ 'name' => 'get-tags', 'route' => '/api/v1/tags', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm), sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf('%s/tags/read', $current_realm) ], ] ] ); } private function seedCompaniesEndpoints(){ $current_realm = Config::get('app.url'); $this->seedApiEndpoints('companies', [ // members [ 'name' => 'get-companies', 'route' => '/api/v1/companies', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm), sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf('%s/companies/read', $current_realm) ], ] ] ); } private function seedGroupsEndpoints(){ $current_realm = Config::get('app.url'); $this->seedApiEndpoints('groups', [ // members [ 'name' => 'get-groups', 'route' => '/api/v1/groups', 'http_method' => 'GET', 'scopes' => [ sprintf(SummitScopes::ReadAllSummitData, $current_realm), sprintf(SummitScopes::ReadSummitData, $current_realm), sprintf('%s/groups/read', $current_realm) ], ] ] ); } private function seedTeamEndpoints(){ $current_realm = Config::get('app.url'); $this->seedApiEndpoints('teams', [ array( 'name' => 'add-team', 'route' => '/api/v1/teams', 'http_method' => 'POST', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), array( 'name' => 'update-team', 'route' => '/api/v1/teams/{team_id}', 'http_method' => 'PUT', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), array( 'name' => 'delete-team', 'route' => '/api/v1/teams/{team_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), array( 'name' => 'get-teams', 'route' => '/api/v1/teams', 'http_method' => 'GET', 'scopes' => [sprintf('%s/teams/read', $current_realm)], ), array( 'name' => 'get-team', 'route' => '/api/v1/teams/{team_id}', 'http_method' => 'GET', 'scopes' => [sprintf('%s/teams/read', $current_realm)], ), array( 'name' => 'post-message-2-team', 'route' => '/api/v1/teams/{team_id}/messages', 'http_method' => 'POST', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), array( 'name' => 'get-messages-from-team', 'route' => '/api/v1/teams/{team_id}/messages', 'http_method' => 'GET', 'scopes' => [sprintf('%s/teams/read', $current_realm)], ), array( 'name' => 'add-member-2-team', 'route' => '/api/v1/teams/{team_id}/members/{member_id}', 'http_method' => 'POST', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), array( 'name' => 'remove-member-from-team', 'route' => '/api/v1/teams/{team_id}/members/{member_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf('%s/teams/write', $current_realm)], ), ] ); $this->seedApiEndpoints('members', [ array( 'name' => 'get-invitations', 'route' => '/api/v1/members/me/team-invitations', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/invitations/read', $current_realm)], ), array( 'name' => 'get-pending-invitations', 'route' => '/api/v1/members/me/team-invitations/pending', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/invitations/read', $current_realm)], ), array( 'name' => 'get-accepted-invitations', 'route' => '/api/v1/members/me/team-invitations/accepted', 'http_method' => 'GET', 'scopes' => [sprintf('%s/members/invitations/read', $current_realm)], ), array( 'name' => 'accept-invitation', 'route' => '/api/v1/members/me/team-invitations/{invitation_id}', 'http_method' => 'PUT', 'scopes' => [sprintf('%s/members/invitations/write', $current_realm)], ), array( 'name' => 'decline-invitation', 'route' => '/api/v1/members/me/team-invitations/{invitation_id}', 'http_method' => 'DELETE', 'scopes' => [sprintf('%s/members/invitations/write', $current_realm)], ), ] ); } }