44
55use OpenApi \Attributes as OA ;
66
7+ #[OA \Schema(
8+ schema: 'PaginatedSummitAttendeesResponse ' ,
9+ allOf: [
10+ new OA \Schema (ref: '#/components/schemas/PaginateDataSchemaResponse ' ),
11+ new OA \Schema (
12+ type: 'object ' ,
13+ properties: [
14+ new OA \Property (
15+ property: 'data ' ,
16+ type: 'array ' ,
17+ items: new OA \Items (ref: '#/components/schemas/SummitAttendee ' )
18+ )
19+ ]
20+ )
21+ ]
22+ )]
23+ class PaginatedSummitAttendeesResponseSchema
24+ {
25+ }
26+
27+ #[OA \Schema(
28+ schema: 'AttendeeRequest ' ,
29+ type: 'object ' ,
30+ properties: [
31+ new OA \Property (property: 'shared_contact_info ' , type: 'boolean ' ),
32+ new OA \Property (property: 'summit_hall_checked_in ' , type: 'boolean ' ),
33+ new OA \Property (property: 'disclaimer_accepted ' , type: 'boolean ' ),
34+ new OA \Property (property: 'first_name ' , type: 'string ' , maxLength: 255 ),
35+ new OA \Property (property: 'surname ' , type: 'string ' , maxLength: 255 ),
36+ new OA \Property (property: 'company ' , type: 'string ' , maxLength: 255 ),
37+ new OA \Property (property: 'email ' , type: 'string ' , maxLength: 255 ),
38+ new OA \Property (property: 'member_id ' , type: 'integer ' ),
39+ new OA \Property (property: 'admin_notes ' , type: 'string ' , maxLength: 1024 ),
40+ new OA \Property (property: 'tags ' , type: 'array ' , items: new OA \Items (type: 'string ' )),
41+ new OA \Property (property: 'manager_id ' , type: 'integer ' ),
42+ new OA \Property (
43+ property: 'extra_questions ' ,
44+ type: 'array ' ,
45+ items: new OA \Items (
46+ type: 'object ' ,
47+ properties: [
48+ new OA \Property (property: 'question_id ' , type: 'integer ' ),
49+ new OA \Property (property: 'answer ' , type: 'string ' )
50+ ]
51+ )
52+ ),
53+ ]
54+ )]
55+ class AttendeeRequestSchema
56+ {
57+ }
58+
59+ #[OA \Schema(
60+ schema: 'AddAttendeeTicketRequest ' ,
61+ type: 'object ' ,
62+ required: ['ticket_type_id ' ],
63+ properties: [
64+ new OA \Property (property: 'ticket_type_id ' , type: 'integer ' ),
65+ new OA \Property (property: 'promo_code ' , type: 'string ' ),
66+ new OA \Property (property: 'external_order_id ' , type: 'string ' ),
67+ new OA \Property (property: 'external_attendee_id ' , type: 'string ' ),
68+ ]
69+ )]
70+ class AddAttendeeTicketRequestSchema
71+ {
72+ }
73+
74+ #[OA \Schema(
75+ schema: 'ReassignAttendeeTicketRequest ' ,
76+ type: 'object ' ,
77+ required: ['attendee_email ' ],
78+ properties: [
79+ new OA \Property (property: 'attendee_first_name ' , type: 'string ' , maxLength: 255 ),
80+ new OA \Property (property: 'attendee_last_name ' , type: 'string ' , maxLength: 255 ),
81+ new OA \Property (property: 'attendee_email ' , type: 'string ' , maxLength: 255 ),
82+ new OA \Property (property: 'attendee_company ' , type: 'string ' , maxLength: 255 ),
83+ new OA \Property (
84+ property: 'extra_questions ' ,
85+ type: 'array ' ,
86+ items: new OA \Items (
87+ type: 'object ' ,
88+ properties: [
89+ new OA \Property (property: 'question_id ' , type: 'integer ' ),
90+ new OA \Property (property: 'answer ' , type: 'string ' )
91+ ]
92+ )
93+ ),
94+ ]
95+ )]
96+ class ReassignAttendeeTicketRequestSchema
97+ {
98+ }
99+
100+ #[OA \Schema(
101+ schema: 'SendAttendeesEmailRequest ' ,
102+ type: 'object ' ,
103+ required: ['email_flow_event ' ],
104+ properties: [
105+ new OA \Property (
106+ property: 'email_flow_event ' ,
107+ type: 'string ' ,
108+ enum: ['SUMMIT_ATTENDEE_TICKET_REGENERATE_HASH ' , 'SUMMIT_ATTENDEE_INVITE_TICKET_EDITION ' , 'SUMMIT_ATTENDEE_ALL_TICKETS_EDITION ' , 'SUMMIT_ATTENDEE_REGISTRATION_INCOMPLETE_REMINDER ' , 'SUMMIT_ATTENDEE_GENERIC ' ]
109+ ),
110+ new OA \Property (
111+ property: 'attendees_ids ' ,
112+ type: 'array ' ,
113+ items: new OA \Items (type: 'integer ' )
114+ ),
115+ new OA \Property (
116+ property: 'excluded_attendees_ids ' ,
117+ type: 'array ' ,
118+ items: new OA \Items (type: 'integer ' )
119+ ),
120+ new OA \Property (property: 'test_email_recipient ' , type: 'string ' , format: 'email ' ),
121+ new OA \Property (property: 'outcome_email_recipient ' , type: 'string ' , format: 'email ' ),
122+ ]
123+ )]
124+ class SendAttendeesEmailRequestSchema
125+ {
126+ }
127+
128+ // Summit Badge Types
129+
7130#[OA \Schema(
8131 schema: "PaginatedSummitBadgeTypesResponse " ,
9132 description: "Paginated list of summit badge types " ,
20143 )
21144 ]
22145)]
23- class PaginatedSummitBadgeTypesResponse
146+ class PaginatedSummitBadgeTypesResponseSchema
24147{
25148}
26149
@@ -36,7 +159,7 @@ class PaginatedSummitBadgeTypesResponse
36159 new OA \Property (property: "is_default " , type: "boolean " , example: false ),
37160 ]
38161)]
39- class SummitBadgeTypeCreateRequest
162+ class SummitBadgeTypeCreateRequestSchema
40163{
41164}
42165
@@ -51,28 +174,12 @@ class SummitBadgeTypeCreateRequest
51174 new OA \Property (property: "is_default " , type: "boolean " , nullable: true , example: false ),
52175 ]
53176)]
54- class SummitBadgeTypeUpdateRequest
177+ class SummitBadgeTypeUpdateRequestSchema
55178{
56179}
57180
58181// Summit Badge Feature Types
59182
60- #[OA \Schema(
61- schema: 'SummitBadgeFeatureType ' ,
62- type: 'object ' ,
63- properties: [
64- new OA \Property (property: 'id ' , type: 'integer ' , example: 1 ),
65- new OA \Property (property: 'name ' , type: 'string ' , example: 'Speaker Ribbon ' ),
66- new OA \Property (property: 'description ' , type: 'string ' , nullable: true , example: 'Special ribbon indicating speaker status ' ),
67- new OA \Property (property: 'template_content ' , type: 'string ' , nullable: true , example: '<div class="speaker-badge">{{name}}</div> ' ),
68- new OA \Property (property: 'summit_id ' , type: 'integer ' , example: 42 ),
69- new OA \Property (property: 'image ' , type: 'string ' , nullable: true , example: 'https://example.com/images/speaker-ribbon.png ' ),
70- ]
71- )]
72- class SummitBadgeFeatureTypeSchema
73- {
74- }
75-
76183#[OA \Schema(
77184 schema: 'PaginatedSummitBadgeFeatureTypesResponse ' ,
78185 allOf: [
0 commit comments