I want to identify repeat events and mark it as not paid event programmatically and
only if the user has paid for the main event, I want to allow them for repeat events
Right now I don't see any value in event array which indicates that the event is a repeat event How can I implement it?

 "id": "49",
            "title": "Title",
            "event_title": "Title",
            "summary": "Summary",
            "description": "Description",
            "event_description": "Description",
            "event_type_id": "2",
            "participant_listing_id": "1",
            "is_public": "0",
            "start_date": "2019-01-15 20:20:00",
            "event_start_date": "2019-01-15 20:20:00",
            "end_date": "2019-01-17 00:00:00",
            "event_end_date": "2019-01-17 00:00:00",
            "is_online_registration": "0",
            "max_participants": "22",
            "event_full_text": "This event is currently full.",
            "is_monetary": "0",
            "is_map": "0",
            "is_active": "0",
            "is_show_location": "1",
            "default_role_id": "2",
            "is_email_confirm": "0",
            "is_pay_later": "0",
            "is_partial_payment": "0",
            "is_multiple_registrations": "0",
            "max_additional_participants": "0",
            "allow_same_participant_emails": "0",
            "has_waitlist": "0",
            "allow_selfcancelxfer": "0",
            "selfcancelxfer_time": "0",
            "is_template": "0",
            "created_id": "2",
            "created_date": "2019-01-07 20:22:38",
            "is_share": "0",
            "is_confirm_enabled": "1",
            "is_billing_required": "0"

The repeat entity is stored in civicrm_recurring_entity table so you might need to use the RecurringEntity api for this purpose. The following should result the repeating events for you -

$result = civicrm_api3('RecurringEntity', 'get', [
  'sequential' => 1,
  'entity_table' => "civicrm_event",
  'parent_id' => main_event_id,

Similarly the api can also be used to find repeated activities.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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