wefunder 0.1.0.beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +263 -0
- data/lib/wefunder/client.rb +283 -0
- data/lib/wefunder/errors.rb +87 -0
- data/lib/wefunder/oauth.rb +135 -0
- data/lib/wefunder/pagination.rb +52 -0
- data/lib/wefunder/token_manager.rb +80 -0
- data/lib/wefunder/transport.rb +93 -0
- data/lib/wefunder/version.rb +5 -0
- data/lib/wefunder/webhooks.rb +238 -0
- data/lib/wefunder.rb +26 -0
- data/lib/wefunder_generated/api/activity_api.rb +234 -0
- data/lib/wefunder_generated/api/attribution_api.rb +182 -0
- data/lib/wefunder_generated/api/attribution_partners_api.rb +392 -0
- data/lib/wefunder_generated/api/attribution_webhooks_api.rb +504 -0
- data/lib/wefunder_generated/api/campaigns_api.rb +82 -0
- data/lib/wefunder_generated/api/companies_api.rb +101 -0
- data/lib/wefunder_generated/api/explore_api.rb +633 -0
- data/lib/wefunder_generated/api/installations_api.rb +405 -0
- data/lib/wefunder_generated/api/intents_api.rb +301 -0
- data/lib/wefunder_generated/api/investment_delta_api.rb +99 -0
- data/lib/wefunder_generated/api/investments_api.rb +238 -0
- data/lib/wefunder_generated/api/portfolio_api.rb +166 -0
- data/lib/wefunder_generated/api/syndicate_deals_api.rb +381 -0
- data/lib/wefunder_generated/api/syndicate_members_api.rb +976 -0
- data/lib/wefunder_generated/api/syndicate_portfolio_api.rb +178 -0
- data/lib/wefunder_generated/api/syndicate_statistics_api.rb +85 -0
- data/lib/wefunder_generated/api/syndicates_api.rb +226 -0
- data/lib/wefunder_generated/api/users_api.rb +329 -0
- data/lib/wefunder_generated/api/webhook_endpoints_api.rb +539 -0
- data/lib/wefunder_generated/api_client.rb +437 -0
- data/lib/wefunder_generated/api_error.rb +58 -0
- data/lib/wefunder_generated/configuration.rb +392 -0
- data/lib/wefunder_generated/models/anonymized_attribution.rb +298 -0
- data/lib/wefunder_generated/models/anonymized_attribution_attribution.rb +330 -0
- data/lib/wefunder_generated/models/anonymized_attribution_status.rb +260 -0
- data/lib/wefunder_generated/models/attributed_investment_list_envelope.rb +226 -0
- data/lib/wefunder_generated/models/attributed_investment_list_envelope_data_inner.rb +105 -0
- data/lib/wefunder_generated/models/attributed_investment_list_envelope_meta.rb +295 -0
- data/lib/wefunder_generated/models/attribution_campaign_access.rb +241 -0
- data/lib/wefunder_generated/models/attribution_campaign_summary.rb +251 -0
- data/lib/wefunder_generated/models/attribution_campaign_summary_list_envelope.rb +216 -0
- data/lib/wefunder_generated/models/attribution_me.rb +235 -0
- data/lib/wefunder_generated/models/attribution_me_envelope.rb +214 -0
- data/lib/wefunder_generated/models/attribution_partner.rb +275 -0
- data/lib/wefunder_generated/models/attribution_stats.rb +266 -0
- data/lib/wefunder_generated/models/attribution_stats_by_campaign_inner.rb +232 -0
- data/lib/wefunder_generated/models/attribution_stats_by_source_inner.rb +232 -0
- data/lib/wefunder_generated/models/attribution_stats_envelope.rb +214 -0
- data/lib/wefunder_generated/models/attribution_stats_period.rb +223 -0
- data/lib/wefunder_generated/models/attribution_stats_quality_breakdown.rb +236 -0
- data/lib/wefunder_generated/models/attribution_stats_totals.rb +245 -0
- data/lib/wefunder_generated/models/attribution_user.rb +232 -0
- data/lib/wefunder_generated/models/audit_event.rb +234 -0
- data/lib/wefunder_generated/models/audit_event_attributes.rb +391 -0
- data/lib/wefunder_generated/models/audit_event_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/bulk_invite_link_create_input.rb +243 -0
- data/lib/wefunder_generated/models/bulk_invite_link_envelope.rb +237 -0
- data/lib/wefunder_generated/models/bulk_invite_link_envelope_errors_inner.rb +233 -0
- data/lib/wefunder_generated/models/bulk_invite_link_envelope_meta.rb +232 -0
- data/lib/wefunder_generated/models/campaign.rb +232 -0
- data/lib/wefunder_generated/models/campaign_attributes.rb +301 -0
- data/lib/wefunder_generated/models/campaign_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/comment_proposal_envelope.rb +274 -0
- data/lib/wefunder_generated/models/comment_proposal_envelope_draft.rb +260 -0
- data/lib/wefunder_generated/models/comment_proposal_envelope_proposal.rb +286 -0
- data/lib/wefunder_generated/models/comment_proposal_envelope_related_questions_inner.rb +264 -0
- data/lib/wefunder_generated/models/company.rb +234 -0
- data/lib/wefunder_generated/models/company_attributes.rb +318 -0
- data/lib/wefunder_generated/models/company_attributes_location.rb +235 -0
- data/lib/wefunder_generated/models/company_disclosures.rb +268 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes.rb +434 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_business.rb +255 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_capital_structure_inner.rb +255 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_current_position.rb +281 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_filing.rb +256 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_financial_statements.rb +233 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_outstanding_debts.rb +227 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_outstanding_debts_items_inner.rb +255 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_outstanding_notes_inner.rb +284 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_prior_offerings_inner.rb +266 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_ratios.rb +272 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_related_parties.rb +226 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_related_parties_parties_inner.rb +265 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_use_of_funds_inner.rb +226 -0
- data/lib/wefunder_generated/models/company_disclosures_attributes_voting_power_inner.rb +236 -0
- data/lib/wefunder_generated/models/company_disclosures_envelope.rb +214 -0
- data/lib/wefunder_generated/models/company_envelope.rb +214 -0
- data/lib/wefunder_generated/models/company_pitch.rb +268 -0
- data/lib/wefunder_generated/models/company_pitch_attributes.rb +311 -0
- data/lib/wefunder_generated/models/company_pitch_attributes_perks.rb +248 -0
- data/lib/wefunder_generated/models/company_pitch_attributes_story.rb +255 -0
- data/lib/wefunder_generated/models/company_pitch_envelope.rb +214 -0
- data/lib/wefunder_generated/models/company_question.rb +268 -0
- data/lib/wefunder_generated/models/company_question_attributes.rb +329 -0
- data/lib/wefunder_generated/models/company_question_attributes_answers_inner.rb +253 -0
- data/lib/wefunder_generated/models/company_question_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/company_question_list_envelope_meta.rb +301 -0
- data/lib/wefunder_generated/models/company_question_person.rb +247 -0
- data/lib/wefunder_generated/models/company_search_result.rb +268 -0
- data/lib/wefunder_generated/models/company_search_result_attributes.rb +266 -0
- data/lib/wefunder_generated/models/company_search_result_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/company_search_result_list_envelope_meta.rb +223 -0
- data/lib/wefunder_generated/models/company_totals.rb +249 -0
- data/lib/wefunder_generated/models/company_update.rb +269 -0
- data/lib/wefunder_generated/models/company_update_attributes.rb +350 -0
- data/lib/wefunder_generated/models/company_update_attributes_author.rb +215 -0
- data/lib/wefunder_generated/models/company_update_envelope.rb +214 -0
- data/lib/wefunder_generated/models/company_update_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/company_update_list_envelope_meta.rb +243 -0
- data/lib/wefunder_generated/models/connected_app.rb +233 -0
- data/lib/wefunder_generated/models/connected_app_attributes.rb +258 -0
- data/lib/wefunder_generated/models/connected_app_list_envelope.rb +216 -0
- data/lib/wefunder_generated/models/connected_app_revocation.rb +223 -0
- data/lib/wefunder_generated/models/connected_app_revocation_envelope.rb +214 -0
- data/lib/wefunder_generated/models/convertible_note_security.rb +266 -0
- data/lib/wefunder_generated/models/convertible_note_security_terms.rb +266 -0
- data/lib/wefunder_generated/models/create_installation_request.rb +294 -0
- data/lib/wefunder_generated/models/create_installation_token_request.rb +216 -0
- data/lib/wefunder_generated/models/create_intent_request.rb +320 -0
- data/lib/wefunder_generated/models/create_partner_invite_request.rb +287 -0
- data/lib/wefunder_generated/models/create_webhook_endpoint_request.rb +291 -0
- data/lib/wefunder_generated/models/create_webhook_subscription_request.rb +263 -0
- data/lib/wefunder_generated/models/current_raise.rb +288 -0
- data/lib/wefunder_generated/models/deal_investor.rb +234 -0
- data/lib/wefunder_generated/models/deal_investor_attributes.rb +321 -0
- data/lib/wefunder_generated/models/deal_investor_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/deal_investor_list_envelope_meta.rb +252 -0
- data/lib/wefunder_generated/models/debt_security.rb +266 -0
- data/lib/wefunder_generated/models/debt_security_terms.rb +235 -0
- data/lib/wefunder_generated/models/delete_webhook_endpoint200_response.rb +214 -0
- data/lib/wefunder_generated/models/delete_webhook_endpoint200_response_data.rb +232 -0
- data/lib/wefunder_generated/models/disclosure_document.rb +224 -0
- data/lib/wefunder_generated/models/disclosure_person.rb +254 -0
- data/lib/wefunder_generated/models/eligible_target_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/eligible_target_list_envelope_data_inner.rb +295 -0
- data/lib/wefunder_generated/models/equity_security.rb +266 -0
- data/lib/wefunder_generated/models/equity_security_terms.rb +271 -0
- data/lib/wefunder_generated/models/error.rb +214 -0
- data/lib/wefunder_generated/models/error_error.rb +254 -0
- data/lib/wefunder_generated/models/exemption.rb +271 -0
- data/lib/wefunder_generated/models/fiscal_year_financials.rb +296 -0
- data/lib/wefunder_generated/models/follow_state_envelope.rb +214 -0
- data/lib/wefunder_generated/models/follow_state_envelope_data.rb +268 -0
- data/lib/wefunder_generated/models/follow_state_envelope_data_attributes.rb +225 -0
- data/lib/wefunder_generated/models/followed_company.rb +268 -0
- data/lib/wefunder_generated/models/followed_company_attributes.rb +275 -0
- data/lib/wefunder_generated/models/followed_company_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/full_attribution.rb +272 -0
- data/lib/wefunder_generated/models/full_attribution_attribution.rb +326 -0
- data/lib/wefunder_generated/models/full_attribution_investor.rb +242 -0
- data/lib/wefunder_generated/models/full_attribution_status.rb +257 -0
- data/lib/wefunder_generated/models/fund_security.rb +267 -0
- data/lib/wefunder_generated/models/installation.rb +233 -0
- data/lib/wefunder_generated/models/installation_attributes.rb +307 -0
- data/lib/wefunder_generated/models/installation_attributes_target.rb +267 -0
- data/lib/wefunder_generated/models/installation_envelope.rb +223 -0
- data/lib/wefunder_generated/models/installation_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/installation_list_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/installation_token_envelope.rb +232 -0
- data/lib/wefunder_generated/models/installation_token_envelope_token.rb +252 -0
- data/lib/wefunder_generated/models/intent.rb +234 -0
- data/lib/wefunder_generated/models/intent_attributes.rb +375 -0
- data/lib/wefunder_generated/models/intent_attributes_resource_id.rb +106 -0
- data/lib/wefunder_generated/models/intent_envelope.rb +214 -0
- data/lib/wefunder_generated/models/intent_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/intent_preview_envelope.rb +214 -0
- data/lib/wefunder_generated/models/intent_preview_envelope_data.rb +257 -0
- data/lib/wefunder_generated/models/intent_preview_envelope_data_attributes.rb +262 -0
- data/lib/wefunder_generated/models/intent_review.rb +234 -0
- data/lib/wefunder_generated/models/investment_change_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/investment_change_list_envelope_meta.rb +285 -0
- data/lib/wefunder_generated/models/investment_delta_record.rb +504 -0
- data/lib/wefunder_generated/models/investment_delta_record_amounts.rb +251 -0
- data/lib/wefunder_generated/models/investment_delta_record_blockers_inner.rb +224 -0
- data/lib/wefunder_generated/models/investment_delta_record_contracts_inner.rb +234 -0
- data/lib/wefunder_generated/models/investment_delta_record_investor.rb +286 -0
- data/lib/wefunder_generated/models/investment_envelope.rb +223 -0
- data/lib/wefunder_generated/models/investment_envelope_meta.rb +270 -0
- data/lib/wefunder_generated/models/investment_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/investment_list_envelope_meta.rb +288 -0
- data/lib/wefunder_generated/models/investment_session.rb +232 -0
- data/lib/wefunder_generated/models/investment_session_attributes.rb +384 -0
- data/lib/wefunder_generated/models/investment_session_attributes_events_inner.rb +232 -0
- data/lib/wefunder_generated/models/investment_session_create_input.rb +331 -0
- data/lib/wefunder_generated/models/investment_session_envelope.rb +223 -0
- data/lib/wefunder_generated/models/investment_session_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/investment_session_list_envelope_meta.rb +242 -0
- data/lib/wefunder_generated/models/investor.rb +233 -0
- data/lib/wefunder_generated/models/investor_attributes.rb +262 -0
- data/lib/wefunder_generated/models/investor_envelope.rb +214 -0
- data/lib/wefunder_generated/models/investor_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/invite_link.rb +233 -0
- data/lib/wefunder_generated/models/invite_link_attributes.rb +375 -0
- data/lib/wefunder_generated/models/invite_link_attributes_events_inner.rb +243 -0
- data/lib/wefunder_generated/models/invite_link_create_input.rb +295 -0
- data/lib/wefunder_generated/models/invite_link_envelope.rb +223 -0
- data/lib/wefunder_generated/models/invite_link_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/invite_link_update_input.rb +227 -0
- data/lib/wefunder_generated/models/invite_syndicate_member_request.rb +277 -0
- data/lib/wefunder_generated/models/marketing_partner.rb +295 -0
- data/lib/wefunder_generated/models/marketing_partner_envelope.rb +214 -0
- data/lib/wefunder_generated/models/member_investment.rb +234 -0
- data/lib/wefunder_generated/models/member_investment_attributes.rb +301 -0
- data/lib/wefunder_generated/models/member_investment_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/member_investment_list_envelope_meta.rb +225 -0
- data/lib/wefunder_generated/models/my_company.rb +268 -0
- data/lib/wefunder_generated/models/my_company_attributes.rb +257 -0
- data/lib/wefunder_generated/models/my_company_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/offering.rb +267 -0
- data/lib/wefunder_generated/models/offering_attributes.rb +469 -0
- data/lib/wefunder_generated/models/offering_attributes_intended_security.rb +258 -0
- data/lib/wefunder_generated/models/offering_attributes_security.rb +105 -0
- data/lib/wefunder_generated/models/offering_envelope.rb +214 -0
- data/lib/wefunder_generated/models/offering_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/offering_list_envelope_meta.rb +265 -0
- data/lib/wefunder_generated/models/offering_stats_envelope.rb +223 -0
- data/lib/wefunder_generated/models/offering_stats_envelope_data.rb +253 -0
- data/lib/wefunder_generated/models/offering_stats_envelope_data_by_status_value.rb +232 -0
- data/lib/wefunder_generated/models/offering_stats_envelope_data_total.rb +233 -0
- data/lib/wefunder_generated/models/offering_stats_envelope_meta.rb +258 -0
- data/lib/wefunder_generated/models/offering_warnings_inner.rb +257 -0
- data/lib/wefunder_generated/models/other_security.rb +267 -0
- data/lib/wefunder_generated/models/other_security_terms.rb +235 -0
- data/lib/wefunder_generated/models/pagination_meta.rb +234 -0
- data/lib/wefunder_generated/models/pagination_meta_next_cursor.rb +106 -0
- data/lib/wefunder_generated/models/partner_investment.rb +232 -0
- data/lib/wefunder_generated/models/partner_investment_attributes.rb +305 -0
- data/lib/wefunder_generated/models/partner_investment_attributes_accreditation.rb +289 -0
- data/lib/wefunder_generated/models/partner_investment_envelope.rb +214 -0
- data/lib/wefunder_generated/models/partner_investment_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/partner_investor.rb +233 -0
- data/lib/wefunder_generated/models/partner_investor_attributes.rb +264 -0
- data/lib/wefunder_generated/models/partner_investor_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/partner_invite.rb +360 -0
- data/lib/wefunder_generated/models/partner_invite_envelope.rb +214 -0
- data/lib/wefunder_generated/models/partner_invite_list_envelope.rb +216 -0
- data/lib/wefunder_generated/models/partner_webhook_event.rb +257 -0
- data/lib/wefunder_generated/models/partner_webhook_event_envelope.rb +214 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription.rb +232 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_attributes.rb +243 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_create_input.rb +239 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_envelope.rb +214 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_list_envelope.rb +216 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_with_secret.rb +239 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_with_secret_all_of_attributes.rb +215 -0
- data/lib/wefunder_generated/models/partner_webhook_subscription_with_secret_envelope.rb +214 -0
- data/lib/wefunder_generated/models/past_round.rb +309 -0
- data/lib/wefunder_generated/models/perk_tier.rb +226 -0
- data/lib/wefunder_generated/models/pitch_block.rb +375 -0
- data/lib/wefunder_generated/models/pitch_block_links_inner.rb +226 -0
- data/lib/wefunder_generated/models/portfolio_company_ref.rb +235 -0
- data/lib/wefunder_generated/models/portfolio_holding.rb +258 -0
- data/lib/wefunder_generated/models/portfolio_position.rb +268 -0
- data/lib/wefunder_generated/models/portfolio_position_attributes.rb +456 -0
- data/lib/wefunder_generated/models/portfolio_position_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/portfolio_position_list_envelope_meta.rb +234 -0
- data/lib/wefunder_generated/models/portfolio_security.rb +323 -0
- data/lib/wefunder_generated/models/portfolio_security_owner.rb +258 -0
- data/lib/wefunder_generated/models/portfolio_security_terms.rb +257 -0
- data/lib/wefunder_generated/models/portfolio_summary_envelope.rb +214 -0
- data/lib/wefunder_generated/models/portfolio_summary_envelope_data.rb +223 -0
- data/lib/wefunder_generated/models/portfolio_summary_envelope_data_attributes.rb +292 -0
- data/lib/wefunder_generated/models/portfolio_summary_envelope_data_attributes_position_counts.rb +242 -0
- data/lib/wefunder_generated/models/preview_intent_request.rb +262 -0
- data/lib/wefunder_generated/models/register_as_partner_request.rb +232 -0
- data/lib/wefunder_generated/models/reorder_syndicate_members_request.rb +224 -0
- data/lib/wefunder_generated/models/revenue_share_security.rb +266 -0
- data/lib/wefunder_generated/models/revenue_share_security_terms.rb +300 -0
- data/lib/wefunder_generated/models/safe_security.rb +266 -0
- data/lib/wefunder_generated/models/safe_security_terms.rb +257 -0
- data/lib/wefunder_generated/models/security.rb +66 -0
- data/lib/wefunder_generated/models/security_summary.rb +272 -0
- data/lib/wefunder_generated/models/spv.rb +232 -0
- data/lib/wefunder_generated/models/spv_attributes.rb +353 -0
- data/lib/wefunder_generated/models/spv_attributes_target_company.rb +223 -0
- data/lib/wefunder_generated/models/spv_cancel_intent_envelope.rb +224 -0
- data/lib/wefunder_generated/models/spv_cancel_intent_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/spv_close_intent_envelope.rb +224 -0
- data/lib/wefunder_generated/models/spv_close_intent_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/spv_create_input.rb +274 -0
- data/lib/wefunder_generated/models/spv_envelope.rb +214 -0
- data/lib/wefunder_generated/models/spv_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/spv_metrics.rb +261 -0
- data/lib/wefunder_generated/models/spv_settings.rb +275 -0
- data/lib/wefunder_generated/models/spv_status.rb +232 -0
- data/lib/wefunder_generated/models/spv_status_attributes.rb +289 -0
- data/lib/wefunder_generated/models/spv_status_envelope.rb +223 -0
- data/lib/wefunder_generated/models/spv_terms.rb +348 -0
- data/lib/wefunder_generated/models/spv_with_meta_envelope.rb +223 -0
- data/lib/wefunder_generated/models/spv_with_meta_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/syndicate.rb +234 -0
- data/lib/wefunder_generated/models/syndicate_attributes.rb +412 -0
- data/lib/wefunder_generated/models/syndicate_attributes_annual_subscription.rb +236 -0
- data/lib/wefunder_generated/models/syndicate_attributes_traditional_fund.rb +225 -0
- data/lib/wefunder_generated/models/syndicate_deal.rb +234 -0
- data/lib/wefunder_generated/models/syndicate_deal_attributes.rb +435 -0
- data/lib/wefunder_generated/models/syndicate_deal_attributes_exemption.rb +105 -0
- data/lib/wefunder_generated/models/syndicate_deal_attributes_security.rb +105 -0
- data/lib/wefunder_generated/models/syndicate_deal_close_intent_envelope.rb +224 -0
- data/lib/wefunder_generated/models/syndicate_deal_close_intent_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_deal_detail_envelope.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_deal_envelope.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_deal_finalize_intent_envelope.rb +224 -0
- data/lib/wefunder_generated/models/syndicate_deal_finalize_intent_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_deal_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/syndicate_detail_envelope.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/syndicate_member.rb +234 -0
- data/lib/wefunder_generated/models/syndicate_member_attributes.rb +650 -0
- data/lib/wefunder_generated/models/syndicate_member_envelope.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_member_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/syndicate_portfolio_summary_envelope.rb +214 -0
- data/lib/wefunder_generated/models/syndicate_portfolio_summary_envelope_data.rb +223 -0
- data/lib/wefunder_generated/models/syndicate_portfolio_summary_envelope_data_attributes.rb +302 -0
- data/lib/wefunder_generated/models/syndicate_portfolio_summary_envelope_data_attributes_deal_counts.rb +242 -0
- data/lib/wefunder_generated/models/syndicate_statistics.rb +224 -0
- data/lib/wefunder_generated/models/syndicate_statistics_attributes.rb +277 -0
- data/lib/wefunder_generated/models/syndicate_statistics_envelope.rb +214 -0
- data/lib/wefunder_generated/models/tag_ref.rb +238 -0
- data/lib/wefunder_generated/models/target_company_input.rb +258 -0
- data/lib/wefunder_generated/models/test_webhook_endpoint_request.rb +249 -0
- data/lib/wefunder_generated/models/update_syndicate_member_request.rb +221 -0
- data/lib/wefunder_generated/models/update_syndicate_member_request_member.rb +251 -0
- data/lib/wefunder_generated/models/update_syndicate_request.rb +221 -0
- data/lib/wefunder_generated/models/update_syndicate_request_syndicate.rb +232 -0
- data/lib/wefunder_generated/models/update_webhook_endpoint_request.rb +252 -0
- data/lib/wefunder_generated/models/user.rb +233 -0
- data/lib/wefunder_generated/models/user_attributes.rb +300 -0
- data/lib/wefunder_generated/models/user_envelope.rb +214 -0
- data/lib/wefunder_generated/models/validation_error.rb +215 -0
- data/lib/wefunder_generated/models/validation_error_error.rb +234 -0
- data/lib/wefunder_generated/models/validation_error_error_details_inner.rb +232 -0
- data/lib/wefunder_generated/models/webhook_delivery.rb +318 -0
- data/lib/wefunder_generated/models/webhook_endpoint.rb +232 -0
- data/lib/wefunder_generated/models/webhook_endpoint_attributes.rb +327 -0
- data/lib/wefunder_generated/models/webhook_endpoint_envelope.rb +223 -0
- data/lib/wefunder_generated/models/webhook_endpoint_envelope_meta.rb +214 -0
- data/lib/wefunder_generated/models/webhook_endpoint_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/webhook_endpoint_list_envelope_meta.rb +233 -0
- data/lib/wefunder_generated/models/webhook_endpoint_test_result_envelope.rb +223 -0
- data/lib/wefunder_generated/models/webhook_endpoint_test_result_envelope_data.rb +306 -0
- data/lib/wefunder_generated/models/webhook_subscription.rb +304 -0
- data/lib/wefunder_generated/models/webhook_subscription_envelope.rb +214 -0
- data/lib/wefunder_generated/models/webhook_subscription_list_envelope.rb +225 -0
- data/lib/wefunder_generated/models/webhook_subscription_list_envelope_meta.rb +225 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_recent_deliveries_envelope.rb +214 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_recent_deliveries_envelope_data.rb +322 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_secret2_envelope.rb +214 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_secret2_envelope_data.rb +320 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_secret_envelope.rb +214 -0
- data/lib/wefunder_generated/models/webhook_subscription_with_secret_envelope_data.rb +320 -0
- data/lib/wefunder_generated/models/webhook_test_result.rb +233 -0
- data/lib/wefunder_generated/models/webhook_test_result_envelope.rb +214 -0
- data/lib/wefunder_generated/models/wefunder_round.rb +330 -0
- data/lib/wefunder_generated/models/wefunder_round_exemption.rb +104 -0
- data/lib/wefunder_generated/models/wefunder_round_security.rb +104 -0
- data/lib/wefunder_generated/version.rb +15 -0
- data/lib/wefunder_generated.rb +382 -0
- metadata +456 -0
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Wefunder API v2
|
|
3
|
+
|
|
4
|
+
#OAuth 2.0 API for accessing Wefunder data programmatically. ## Authentication This API uses OAuth 2.0 for authentication. To get started: 1. Create an OAuth application at `/oauth/applications` 2. Get your Client ID and Client Secret 3. Implement the OAuth 2.0 Authorization Code flow 4. Use the access token to make API requests ## Versioning The API is versioned by the dated `Wefunder-Version` request header (`YYYY-MM-DD`), never by the URL. Resolution is header → your application's pinned version → latest; every response carries `Wefunder-Version` (the version that handled it) and `Wefunder-Version-Latest`. An unknown value returns `400 invalid_request` naming the valid versions. Current: `2026-10-01`. ## Rate Limits - Standard API: 1,000 requests/hour per token - Admin API: 10,000 requests/hour per token ## Base URL All API requests should be made to: `https://api.wefunder.com` (no version in the path).
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 2.0
|
|
7
|
+
Contact: api@wefunder.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.10.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module WefunderGenerated
|
|
16
|
+
class ActivityApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# List activity events
|
|
23
|
+
# Returns actions taken by OAuth apps authorized by the current user. This is the API backing the user-facing activity feed at Settings > Activity.
|
|
24
|
+
# @param [Hash] opts the optional parameters
|
|
25
|
+
# @option opts [Integer] :app_id Filter by connected app
|
|
26
|
+
# @option opts [String] :action_pattern Filter by action pattern (e.g. syndicates.* or syndicates.member.*)
|
|
27
|
+
# @option opts [String] :resource_type Filter by resource type (e.g. Club). Must be used with resource_id.
|
|
28
|
+
# @option opts [String] :resource_id Filter by specific resource ID. Must be used with resource_type. For Club resources, pass the syndicate's id (`syn_...`).
|
|
29
|
+
# @option opts [String] :status
|
|
30
|
+
# @option opts [Time] :since
|
|
31
|
+
# @option opts [Time] :_until
|
|
32
|
+
# @option opts [String] :cursor Opaque cursor from the previous response's `meta.next_cursor`.
|
|
33
|
+
# @option opts [Integer] :per_page (default to 25)
|
|
34
|
+
# @return [AuditEventListEnvelope]
|
|
35
|
+
def list_activity(opts = {})
|
|
36
|
+
data, _status_code, _headers = list_activity_with_http_info(opts)
|
|
37
|
+
data
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# List activity events
|
|
41
|
+
# Returns actions taken by OAuth apps authorized by the current user. This is the API backing the user-facing activity feed at Settings > Activity.
|
|
42
|
+
# @param [Hash] opts the optional parameters
|
|
43
|
+
# @option opts [Integer] :app_id Filter by connected app
|
|
44
|
+
# @option opts [String] :action_pattern Filter by action pattern (e.g. syndicates.* or syndicates.member.*)
|
|
45
|
+
# @option opts [String] :resource_type Filter by resource type (e.g. Club). Must be used with resource_id.
|
|
46
|
+
# @option opts [String] :resource_id Filter by specific resource ID. Must be used with resource_type. For Club resources, pass the syndicate's id (`syn_...`).
|
|
47
|
+
# @option opts [String] :status
|
|
48
|
+
# @option opts [Time] :since
|
|
49
|
+
# @option opts [Time] :_until
|
|
50
|
+
# @option opts [String] :cursor Opaque cursor from the previous response's `meta.next_cursor`.
|
|
51
|
+
# @option opts [Integer] :per_page (default to 25)
|
|
52
|
+
# @return [Array<(AuditEventListEnvelope, Integer, Hash)>] AuditEventListEnvelope data, response status code and response headers
|
|
53
|
+
def list_activity_with_http_info(opts = {})
|
|
54
|
+
if @api_client.config.debugging
|
|
55
|
+
@api_client.config.logger.debug 'Calling API: ActivityApi.list_activity ...'
|
|
56
|
+
end
|
|
57
|
+
allowable_values = ["success", "failure", "denied"]
|
|
58
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !allowable_values.include?(opts[:'status'])
|
|
59
|
+
fail ArgumentError, "invalid value for \"status\", must be one of #{allowable_values}"
|
|
60
|
+
end
|
|
61
|
+
if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] > 100
|
|
62
|
+
fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling ActivityApi.list_activity, must be smaller than or equal to 100.'
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# resource path
|
|
66
|
+
local_var_path = '/activity'
|
|
67
|
+
|
|
68
|
+
# query parameters
|
|
69
|
+
query_params = opts[:query_params] || {}
|
|
70
|
+
query_params[:'app_id'] = opts[:'app_id'] if !opts[:'app_id'].nil?
|
|
71
|
+
query_params[:'action_pattern'] = opts[:'action_pattern'] if !opts[:'action_pattern'].nil?
|
|
72
|
+
query_params[:'resource_type'] = opts[:'resource_type'] if !opts[:'resource_type'].nil?
|
|
73
|
+
query_params[:'resource_id'] = opts[:'resource_id'] if !opts[:'resource_id'].nil?
|
|
74
|
+
query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
|
|
75
|
+
query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
|
|
76
|
+
query_params[:'until'] = opts[:'_until'] if !opts[:'_until'].nil?
|
|
77
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
78
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
79
|
+
|
|
80
|
+
# header parameters
|
|
81
|
+
header_params = opts[:header_params] || {}
|
|
82
|
+
# HTTP header 'Accept' (if needed)
|
|
83
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
84
|
+
|
|
85
|
+
# form parameters
|
|
86
|
+
form_params = opts[:form_params] || {}
|
|
87
|
+
|
|
88
|
+
# http body (model)
|
|
89
|
+
post_body = opts[:debug_body]
|
|
90
|
+
|
|
91
|
+
# return_type
|
|
92
|
+
return_type = opts[:debug_return_type] || 'AuditEventListEnvelope'
|
|
93
|
+
|
|
94
|
+
# auth_names
|
|
95
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
96
|
+
|
|
97
|
+
new_options = opts.merge(
|
|
98
|
+
:operation => :"ActivityApi.list_activity",
|
|
99
|
+
:header_params => header_params,
|
|
100
|
+
:query_params => query_params,
|
|
101
|
+
:form_params => form_params,
|
|
102
|
+
:body => post_body,
|
|
103
|
+
:auth_names => auth_names,
|
|
104
|
+
:return_type => return_type
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
108
|
+
if @api_client.config.debugging
|
|
109
|
+
@api_client.config.logger.debug "API called: ActivityApi#list_activity\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
110
|
+
end
|
|
111
|
+
return data, status_code, headers
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
# List connected apps
|
|
115
|
+
# Returns all OAuth apps the user has authorized, with summary stats.
|
|
116
|
+
# @param [Hash] opts the optional parameters
|
|
117
|
+
# @return [ConnectedAppListEnvelope]
|
|
118
|
+
def list_connected_apps(opts = {})
|
|
119
|
+
data, _status_code, _headers = list_connected_apps_with_http_info(opts)
|
|
120
|
+
data
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# List connected apps
|
|
124
|
+
# Returns all OAuth apps the user has authorized, with summary stats.
|
|
125
|
+
# @param [Hash] opts the optional parameters
|
|
126
|
+
# @return [Array<(ConnectedAppListEnvelope, Integer, Hash)>] ConnectedAppListEnvelope data, response status code and response headers
|
|
127
|
+
def list_connected_apps_with_http_info(opts = {})
|
|
128
|
+
if @api_client.config.debugging
|
|
129
|
+
@api_client.config.logger.debug 'Calling API: ActivityApi.list_connected_apps ...'
|
|
130
|
+
end
|
|
131
|
+
# resource path
|
|
132
|
+
local_var_path = '/connected-apps'
|
|
133
|
+
|
|
134
|
+
# query parameters
|
|
135
|
+
query_params = opts[:query_params] || {}
|
|
136
|
+
|
|
137
|
+
# header parameters
|
|
138
|
+
header_params = opts[:header_params] || {}
|
|
139
|
+
# HTTP header 'Accept' (if needed)
|
|
140
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
141
|
+
|
|
142
|
+
# form parameters
|
|
143
|
+
form_params = opts[:form_params] || {}
|
|
144
|
+
|
|
145
|
+
# http body (model)
|
|
146
|
+
post_body = opts[:debug_body]
|
|
147
|
+
|
|
148
|
+
# return_type
|
|
149
|
+
return_type = opts[:debug_return_type] || 'ConnectedAppListEnvelope'
|
|
150
|
+
|
|
151
|
+
# auth_names
|
|
152
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
153
|
+
|
|
154
|
+
new_options = opts.merge(
|
|
155
|
+
:operation => :"ActivityApi.list_connected_apps",
|
|
156
|
+
:header_params => header_params,
|
|
157
|
+
:query_params => query_params,
|
|
158
|
+
:form_params => form_params,
|
|
159
|
+
:body => post_body,
|
|
160
|
+
:auth_names => auth_names,
|
|
161
|
+
:return_type => return_type
|
|
162
|
+
)
|
|
163
|
+
|
|
164
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
165
|
+
if @api_client.config.debugging
|
|
166
|
+
@api_client.config.logger.debug "API called: ActivityApi#list_connected_apps\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
167
|
+
end
|
|
168
|
+
return data, status_code, headers
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
# Revoke connected app
|
|
172
|
+
# Revoke all tokens for this app. Any pending intents from this app are automatically expired.
|
|
173
|
+
# @param app_id [Integer]
|
|
174
|
+
# @param [Hash] opts the optional parameters
|
|
175
|
+
# @return [ConnectedAppRevocationEnvelope]
|
|
176
|
+
def revoke_connected_app(app_id, opts = {})
|
|
177
|
+
data, _status_code, _headers = revoke_connected_app_with_http_info(app_id, opts)
|
|
178
|
+
data
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
# Revoke connected app
|
|
182
|
+
# Revoke all tokens for this app. Any pending intents from this app are automatically expired.
|
|
183
|
+
# @param app_id [Integer]
|
|
184
|
+
# @param [Hash] opts the optional parameters
|
|
185
|
+
# @return [Array<(ConnectedAppRevocationEnvelope, Integer, Hash)>] ConnectedAppRevocationEnvelope data, response status code and response headers
|
|
186
|
+
def revoke_connected_app_with_http_info(app_id, opts = {})
|
|
187
|
+
if @api_client.config.debugging
|
|
188
|
+
@api_client.config.logger.debug 'Calling API: ActivityApi.revoke_connected_app ...'
|
|
189
|
+
end
|
|
190
|
+
# verify the required parameter 'app_id' is set
|
|
191
|
+
if @api_client.config.client_side_validation && app_id.nil?
|
|
192
|
+
fail ArgumentError, "Missing the required parameter 'app_id' when calling ActivityApi.revoke_connected_app"
|
|
193
|
+
end
|
|
194
|
+
# resource path
|
|
195
|
+
local_var_path = '/connected-apps/{app_id}'.sub('{' + 'app_id' + '}', CGI.escape(app_id.to_s))
|
|
196
|
+
|
|
197
|
+
# query parameters
|
|
198
|
+
query_params = opts[:query_params] || {}
|
|
199
|
+
|
|
200
|
+
# header parameters
|
|
201
|
+
header_params = opts[:header_params] || {}
|
|
202
|
+
# HTTP header 'Accept' (if needed)
|
|
203
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
204
|
+
|
|
205
|
+
# form parameters
|
|
206
|
+
form_params = opts[:form_params] || {}
|
|
207
|
+
|
|
208
|
+
# http body (model)
|
|
209
|
+
post_body = opts[:debug_body]
|
|
210
|
+
|
|
211
|
+
# return_type
|
|
212
|
+
return_type = opts[:debug_return_type] || 'ConnectedAppRevocationEnvelope'
|
|
213
|
+
|
|
214
|
+
# auth_names
|
|
215
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
216
|
+
|
|
217
|
+
new_options = opts.merge(
|
|
218
|
+
:operation => :"ActivityApi.revoke_connected_app",
|
|
219
|
+
:header_params => header_params,
|
|
220
|
+
:query_params => query_params,
|
|
221
|
+
:form_params => form_params,
|
|
222
|
+
:body => post_body,
|
|
223
|
+
:auth_names => auth_names,
|
|
224
|
+
:return_type => return_type
|
|
225
|
+
)
|
|
226
|
+
|
|
227
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
228
|
+
if @api_client.config.debugging
|
|
229
|
+
@api_client.config.logger.debug "API called: ActivityApi#revoke_connected_app\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
230
|
+
end
|
|
231
|
+
return data, status_code, headers
|
|
232
|
+
end
|
|
233
|
+
end
|
|
234
|
+
end
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Wefunder API v2
|
|
3
|
+
|
|
4
|
+
#OAuth 2.0 API for accessing Wefunder data programmatically. ## Authentication This API uses OAuth 2.0 for authentication. To get started: 1. Create an OAuth application at `/oauth/applications` 2. Get your Client ID and Client Secret 3. Implement the OAuth 2.0 Authorization Code flow 4. Use the access token to make API requests ## Versioning The API is versioned by the dated `Wefunder-Version` request header (`YYYY-MM-DD`), never by the URL. Resolution is header → your application's pinned version → latest; every response carries `Wefunder-Version` (the version that handled it) and `Wefunder-Version-Latest`. An unknown value returns `400 invalid_request` naming the valid versions. Current: `2026-10-01`. ## Rate Limits - Standard API: 1,000 requests/hour per token - Admin API: 10,000 requests/hour per token ## Base URL All API requests should be made to: `https://api.wefunder.com` (no version in the path).
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 2.0
|
|
7
|
+
Contact: api@wefunder.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.10.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module WefunderGenerated
|
|
16
|
+
class AttributionApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Get aggregate attribution statistics
|
|
23
|
+
# Returns aggregate attribution statistics for a campaign. This is a **Tier 0** endpoint available to all OAuth applications with the `read:attribution:aggregate` scope. Use this endpoint to: - Track overall marketing campaign performance - Measure conversion rates by UTM source/campaign - Monitor investment quality metrics - Build performance dashboards The response includes totals and breakdowns by UTM parameters. All counts exclude disputed attributions. **Privacy**: This endpoint returns aggregate data only. No individual investor information is exposed.
|
|
24
|
+
# @param campaign_id [Integer] The fundraise/campaign ID
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @option opts [Date] :start_date Filter results to attributions on or after this date. Format: YYYY-MM-DD. Defaults to 90 days ago if not specified.
|
|
27
|
+
# @option opts [Date] :end_date Filter results to attributions on or before this date. Format: YYYY-MM-DD. Defaults to today if not specified.
|
|
28
|
+
# @option opts [String] :utm_source Filter by UTM source (e.g., \"GoogleAds\", \"facebook\", \"Klaviyo\")
|
|
29
|
+
# @option opts [String] :utm_campaign Filter by UTM campaign name
|
|
30
|
+
# @return [AttributionStatsEnvelope]
|
|
31
|
+
def get_attribution_stats(campaign_id, opts = {})
|
|
32
|
+
data, _status_code, _headers = get_attribution_stats_with_http_info(campaign_id, opts)
|
|
33
|
+
data
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# Get aggregate attribution statistics
|
|
37
|
+
# Returns aggregate attribution statistics for a campaign. This is a **Tier 0** endpoint available to all OAuth applications with the `read:attribution:aggregate` scope. Use this endpoint to: - Track overall marketing campaign performance - Measure conversion rates by UTM source/campaign - Monitor investment quality metrics - Build performance dashboards The response includes totals and breakdowns by UTM parameters. All counts exclude disputed attributions. **Privacy**: This endpoint returns aggregate data only. No individual investor information is exposed.
|
|
38
|
+
# @param campaign_id [Integer] The fundraise/campaign ID
|
|
39
|
+
# @param [Hash] opts the optional parameters
|
|
40
|
+
# @option opts [Date] :start_date Filter results to attributions on or after this date. Format: YYYY-MM-DD. Defaults to 90 days ago if not specified.
|
|
41
|
+
# @option opts [Date] :end_date Filter results to attributions on or before this date. Format: YYYY-MM-DD. Defaults to today if not specified.
|
|
42
|
+
# @option opts [String] :utm_source Filter by UTM source (e.g., \"GoogleAds\", \"facebook\", \"Klaviyo\")
|
|
43
|
+
# @option opts [String] :utm_campaign Filter by UTM campaign name
|
|
44
|
+
# @return [Array<(AttributionStatsEnvelope, Integer, Hash)>] AttributionStatsEnvelope data, response status code and response headers
|
|
45
|
+
def get_attribution_stats_with_http_info(campaign_id, opts = {})
|
|
46
|
+
if @api_client.config.debugging
|
|
47
|
+
@api_client.config.logger.debug 'Calling API: AttributionApi.get_attribution_stats ...'
|
|
48
|
+
end
|
|
49
|
+
# verify the required parameter 'campaign_id' is set
|
|
50
|
+
if @api_client.config.client_side_validation && campaign_id.nil?
|
|
51
|
+
fail ArgumentError, "Missing the required parameter 'campaign_id' when calling AttributionApi.get_attribution_stats"
|
|
52
|
+
end
|
|
53
|
+
# resource path
|
|
54
|
+
local_var_path = '/campaigns/{campaign_id}/attribution/stats'.sub('{' + 'campaign_id' + '}', CGI.escape(campaign_id.to_s))
|
|
55
|
+
|
|
56
|
+
# query parameters
|
|
57
|
+
query_params = opts[:query_params] || {}
|
|
58
|
+
query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
|
|
59
|
+
query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
|
|
60
|
+
query_params[:'utm_source'] = opts[:'utm_source'] if !opts[:'utm_source'].nil?
|
|
61
|
+
query_params[:'utm_campaign'] = opts[:'utm_campaign'] if !opts[:'utm_campaign'].nil?
|
|
62
|
+
|
|
63
|
+
# header parameters
|
|
64
|
+
header_params = opts[:header_params] || {}
|
|
65
|
+
# HTTP header 'Accept' (if needed)
|
|
66
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
67
|
+
|
|
68
|
+
# form parameters
|
|
69
|
+
form_params = opts[:form_params] || {}
|
|
70
|
+
|
|
71
|
+
# http body (model)
|
|
72
|
+
post_body = opts[:debug_body]
|
|
73
|
+
|
|
74
|
+
# return_type
|
|
75
|
+
return_type = opts[:debug_return_type] || 'AttributionStatsEnvelope'
|
|
76
|
+
|
|
77
|
+
# auth_names
|
|
78
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
79
|
+
|
|
80
|
+
new_options = opts.merge(
|
|
81
|
+
:operation => :"AttributionApi.get_attribution_stats",
|
|
82
|
+
:header_params => header_params,
|
|
83
|
+
:query_params => query_params,
|
|
84
|
+
:form_params => form_params,
|
|
85
|
+
:body => post_body,
|
|
86
|
+
:auth_names => auth_names,
|
|
87
|
+
:return_type => return_type
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
91
|
+
if @api_client.config.debugging
|
|
92
|
+
@api_client.config.logger.debug "API called: AttributionApi#get_attribution_stats\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
93
|
+
end
|
|
94
|
+
return data, status_code, headers
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# List attributed investments
|
|
98
|
+
# Returns a list of attributed investments. The detail level depends on your access: **Tier 1 (Marketing Partners)** - Anonymized data: - Investor identity represented by opaque tokens (not real IDs) - Tokens are campaign-scoped (different token per campaign for same investor) - Investment amounts shown as tiers (small/medium/large), not exact values - No PII (email, name, address) is returned **Tier 2 (Founders/Employees)** - Full data with `detail_level=full`: - Real investment IDs (linkable to Wefunder admin) - Investor name, email, and username - Exact dollar amounts **Access**: Requires Tier 1+ access approval from Wefunder admin.
|
|
99
|
+
# @param campaign_id [Integer] The fundraise/campaign ID
|
|
100
|
+
# @param [Hash] opts the optional parameters
|
|
101
|
+
# @option opts [Integer] :cursor Cursor-based pagination token. Use the `next_cursor` value from the previous response's `meta` object to retrieve the next page of results. Omit this parameter to retrieve the first page.
|
|
102
|
+
# @option opts [Date] :start_date Filter results to attributions on or after this date. Format: YYYY-MM-DD. Defaults to 90 days ago if not specified.
|
|
103
|
+
# @option opts [Date] :end_date Filter results to attributions on or before this date. Format: YYYY-MM-DD. Defaults to today if not specified.
|
|
104
|
+
# @option opts [String] :utm_source Filter by UTM source (e.g., \"GoogleAds\", \"facebook\", \"Klaviyo\")
|
|
105
|
+
# @option opts [String] :utm_campaign Filter by UTM campaign name
|
|
106
|
+
# @option opts [String] :detail_level Level of detail to return: - `anonymized` (default): Opaque tokens, amount tiers - `full`: Real IDs, exact amounts, investor PII (founders only) Marketing partners always receive anonymized data regardless of this parameter. (default to 'anonymized')
|
|
107
|
+
# @return [AttributedInvestmentListEnvelope]
|
|
108
|
+
def list_attributed_investments(campaign_id, opts = {})
|
|
109
|
+
data, _status_code, _headers = list_attributed_investments_with_http_info(campaign_id, opts)
|
|
110
|
+
data
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
# List attributed investments
|
|
114
|
+
# Returns a list of attributed investments. The detail level depends on your access: **Tier 1 (Marketing Partners)** - Anonymized data: - Investor identity represented by opaque tokens (not real IDs) - Tokens are campaign-scoped (different token per campaign for same investor) - Investment amounts shown as tiers (small/medium/large), not exact values - No PII (email, name, address) is returned **Tier 2 (Founders/Employees)** - Full data with `detail_level=full`: - Real investment IDs (linkable to Wefunder admin) - Investor name, email, and username - Exact dollar amounts **Access**: Requires Tier 1+ access approval from Wefunder admin.
|
|
115
|
+
# @param campaign_id [Integer] The fundraise/campaign ID
|
|
116
|
+
# @param [Hash] opts the optional parameters
|
|
117
|
+
# @option opts [Integer] :cursor Cursor-based pagination token. Use the `next_cursor` value from the previous response's `meta` object to retrieve the next page of results. Omit this parameter to retrieve the first page.
|
|
118
|
+
# @option opts [Date] :start_date Filter results to attributions on or after this date. Format: YYYY-MM-DD. Defaults to 90 days ago if not specified.
|
|
119
|
+
# @option opts [Date] :end_date Filter results to attributions on or before this date. Format: YYYY-MM-DD. Defaults to today if not specified.
|
|
120
|
+
# @option opts [String] :utm_source Filter by UTM source (e.g., \"GoogleAds\", \"facebook\", \"Klaviyo\")
|
|
121
|
+
# @option opts [String] :utm_campaign Filter by UTM campaign name
|
|
122
|
+
# @option opts [String] :detail_level Level of detail to return: - `anonymized` (default): Opaque tokens, amount tiers - `full`: Real IDs, exact amounts, investor PII (founders only) Marketing partners always receive anonymized data regardless of this parameter. (default to 'anonymized')
|
|
123
|
+
# @return [Array<(AttributedInvestmentListEnvelope, Integer, Hash)>] AttributedInvestmentListEnvelope data, response status code and response headers
|
|
124
|
+
def list_attributed_investments_with_http_info(campaign_id, opts = {})
|
|
125
|
+
if @api_client.config.debugging
|
|
126
|
+
@api_client.config.logger.debug 'Calling API: AttributionApi.list_attributed_investments ...'
|
|
127
|
+
end
|
|
128
|
+
# verify the required parameter 'campaign_id' is set
|
|
129
|
+
if @api_client.config.client_side_validation && campaign_id.nil?
|
|
130
|
+
fail ArgumentError, "Missing the required parameter 'campaign_id' when calling AttributionApi.list_attributed_investments"
|
|
131
|
+
end
|
|
132
|
+
allowable_values = ["anonymized", "full"]
|
|
133
|
+
if @api_client.config.client_side_validation && opts[:'detail_level'] && !allowable_values.include?(opts[:'detail_level'])
|
|
134
|
+
fail ArgumentError, "invalid value for \"detail_level\", must be one of #{allowable_values}"
|
|
135
|
+
end
|
|
136
|
+
# resource path
|
|
137
|
+
local_var_path = '/campaigns/{campaign_id}/attribution/investments'.sub('{' + 'campaign_id' + '}', CGI.escape(campaign_id.to_s))
|
|
138
|
+
|
|
139
|
+
# query parameters
|
|
140
|
+
query_params = opts[:query_params] || {}
|
|
141
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
142
|
+
query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil?
|
|
143
|
+
query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil?
|
|
144
|
+
query_params[:'utm_source'] = opts[:'utm_source'] if !opts[:'utm_source'].nil?
|
|
145
|
+
query_params[:'utm_campaign'] = opts[:'utm_campaign'] if !opts[:'utm_campaign'].nil?
|
|
146
|
+
query_params[:'detail_level'] = opts[:'detail_level'] if !opts[:'detail_level'].nil?
|
|
147
|
+
|
|
148
|
+
# header parameters
|
|
149
|
+
header_params = opts[:header_params] || {}
|
|
150
|
+
# HTTP header 'Accept' (if needed)
|
|
151
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
152
|
+
|
|
153
|
+
# form parameters
|
|
154
|
+
form_params = opts[:form_params] || {}
|
|
155
|
+
|
|
156
|
+
# http body (model)
|
|
157
|
+
post_body = opts[:debug_body]
|
|
158
|
+
|
|
159
|
+
# return_type
|
|
160
|
+
return_type = opts[:debug_return_type] || 'AttributedInvestmentListEnvelope'
|
|
161
|
+
|
|
162
|
+
# auth_names
|
|
163
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
164
|
+
|
|
165
|
+
new_options = opts.merge(
|
|
166
|
+
:operation => :"AttributionApi.list_attributed_investments",
|
|
167
|
+
:header_params => header_params,
|
|
168
|
+
:query_params => query_params,
|
|
169
|
+
:form_params => form_params,
|
|
170
|
+
:body => post_body,
|
|
171
|
+
:auth_names => auth_names,
|
|
172
|
+
:return_type => return_type
|
|
173
|
+
)
|
|
174
|
+
|
|
175
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
176
|
+
if @api_client.config.debugging
|
|
177
|
+
@api_client.config.logger.debug "API called: AttributionApi#list_attributed_investments\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
178
|
+
end
|
|
179
|
+
return data, status_code, headers
|
|
180
|
+
end
|
|
181
|
+
end
|
|
182
|
+
end
|