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,178 @@
|
|
|
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 SyndicatePortfolioApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Get syndicate portfolio summary
|
|
23
|
+
# Returns totals across the syndicate's portfolio: cost basis, current value, gains, per-status deal counts, and the number of distinct investors. Accepts the same `status` and `company` filters as the positions endpoint to total a slice of the portfolio, such as only exited deals. The summary covers the syndicate's funded deals, summed across everyone holding their securities (not just current members), as aggregate figures only. Member-level data is available on the members endpoints. Portfolio values are recalculated periodically rather than on each request, so recent investments and valuation changes can take a few minutes to appear. `as_of` is the timestamp of the oldest calculation included in the response. Monetary values are **integer cents**; per-share prices and return multiples are **decimal strings**.
|
|
24
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @option opts [String] :status Total only deals with this status.
|
|
27
|
+
# @option opts [String] :company Total only positions in this company, by its id (`co_...`). Unknown ids return 404.
|
|
28
|
+
# @return [SyndicatePortfolioSummaryEnvelope]
|
|
29
|
+
def get_syndicate_portfolio(syndicate_id, opts = {})
|
|
30
|
+
data, _status_code, _headers = get_syndicate_portfolio_with_http_info(syndicate_id, opts)
|
|
31
|
+
data
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Get syndicate portfolio summary
|
|
35
|
+
# Returns totals across the syndicate's portfolio: cost basis, current value, gains, per-status deal counts, and the number of distinct investors. Accepts the same `status` and `company` filters as the positions endpoint to total a slice of the portfolio, such as only exited deals. The summary covers the syndicate's funded deals, summed across everyone holding their securities (not just current members), as aggregate figures only. Member-level data is available on the members endpoints. Portfolio values are recalculated periodically rather than on each request, so recent investments and valuation changes can take a few minutes to appear. `as_of` is the timestamp of the oldest calculation included in the response. Monetary values are **integer cents**; per-share prices and return multiples are **decimal strings**.
|
|
36
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
37
|
+
# @param [Hash] opts the optional parameters
|
|
38
|
+
# @option opts [String] :status Total only deals with this status.
|
|
39
|
+
# @option opts [String] :company Total only positions in this company, by its id (`co_...`). Unknown ids return 404.
|
|
40
|
+
# @return [Array<(SyndicatePortfolioSummaryEnvelope, Integer, Hash)>] SyndicatePortfolioSummaryEnvelope data, response status code and response headers
|
|
41
|
+
def get_syndicate_portfolio_with_http_info(syndicate_id, opts = {})
|
|
42
|
+
if @api_client.config.debugging
|
|
43
|
+
@api_client.config.logger.debug 'Calling API: SyndicatePortfolioApi.get_syndicate_portfolio ...'
|
|
44
|
+
end
|
|
45
|
+
# verify the required parameter 'syndicate_id' is set
|
|
46
|
+
if @api_client.config.client_side_validation && syndicate_id.nil?
|
|
47
|
+
fail ArgumentError, "Missing the required parameter 'syndicate_id' when calling SyndicatePortfolioApi.get_syndicate_portfolio"
|
|
48
|
+
end
|
|
49
|
+
allowable_values = ["active", "exited", "sold", "failed"]
|
|
50
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !allowable_values.include?(opts[:'status'])
|
|
51
|
+
fail ArgumentError, "invalid value for \"status\", must be one of #{allowable_values}"
|
|
52
|
+
end
|
|
53
|
+
# resource path
|
|
54
|
+
local_var_path = '/syndicates/{syndicate_id}/portfolio'.sub('{' + 'syndicate_id' + '}', CGI.escape(syndicate_id.to_s))
|
|
55
|
+
|
|
56
|
+
# query parameters
|
|
57
|
+
query_params = opts[:query_params] || {}
|
|
58
|
+
query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
|
|
59
|
+
query_params[:'company'] = opts[:'company'] if !opts[:'company'].nil?
|
|
60
|
+
|
|
61
|
+
# header parameters
|
|
62
|
+
header_params = opts[:header_params] || {}
|
|
63
|
+
# HTTP header 'Accept' (if needed)
|
|
64
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
65
|
+
|
|
66
|
+
# form parameters
|
|
67
|
+
form_params = opts[:form_params] || {}
|
|
68
|
+
|
|
69
|
+
# http body (model)
|
|
70
|
+
post_body = opts[:debug_body]
|
|
71
|
+
|
|
72
|
+
# return_type
|
|
73
|
+
return_type = opts[:debug_return_type] || 'SyndicatePortfolioSummaryEnvelope'
|
|
74
|
+
|
|
75
|
+
# auth_names
|
|
76
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
77
|
+
|
|
78
|
+
new_options = opts.merge(
|
|
79
|
+
:operation => :"SyndicatePortfolioApi.get_syndicate_portfolio",
|
|
80
|
+
:header_params => header_params,
|
|
81
|
+
:query_params => query_params,
|
|
82
|
+
:form_params => form_params,
|
|
83
|
+
:body => post_body,
|
|
84
|
+
:auth_names => auth_names,
|
|
85
|
+
:return_type => return_type
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
89
|
+
if @api_client.config.debugging
|
|
90
|
+
@api_client.config.logger.debug "API called: SyndicatePortfolioApi#get_syndicate_portfolio\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
91
|
+
end
|
|
92
|
+
return data, status_code, headers
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# List syndicate portfolio positions
|
|
96
|
+
# Returns the syndicate's portfolio one deal at a time, newest first. Each position is one fundraise (\"offering\"), aggregated across everyone holding its securities, with `investor_count` at both the position and security level. `securities` breaks each position down by security offering (for example, an early bird tier vs the regular terms) — most deals have a single entry. Fund and SPV deals identify the companies the vehicle invested in under `holdings`; some older vehicles have no recorded holdings and return an empty array.
|
|
97
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
98
|
+
# @param [Hash] opts the optional parameters
|
|
99
|
+
# @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.
|
|
100
|
+
# @option opts [Integer] :per_page Page size, 1-100. Defaults to 25. (default to 25)
|
|
101
|
+
# @option opts [String] :status Filter positions by status.
|
|
102
|
+
# @option opts [String] :company Filter to a single company by its id (`co_...`). Unknown ids return 404.
|
|
103
|
+
# @return [PortfolioPositionListEnvelope]
|
|
104
|
+
def list_syndicate_portfolio_positions(syndicate_id, opts = {})
|
|
105
|
+
data, _status_code, _headers = list_syndicate_portfolio_positions_with_http_info(syndicate_id, opts)
|
|
106
|
+
data
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
# List syndicate portfolio positions
|
|
110
|
+
# Returns the syndicate's portfolio one deal at a time, newest first. Each position is one fundraise (\"offering\"), aggregated across everyone holding its securities, with `investor_count` at both the position and security level. `securities` breaks each position down by security offering (for example, an early bird tier vs the regular terms) — most deals have a single entry. Fund and SPV deals identify the companies the vehicle invested in under `holdings`; some older vehicles have no recorded holdings and return an empty array.
|
|
111
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
112
|
+
# @param [Hash] opts the optional parameters
|
|
113
|
+
# @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.
|
|
114
|
+
# @option opts [Integer] :per_page Page size, 1-100. Defaults to 25. (default to 25)
|
|
115
|
+
# @option opts [String] :status Filter positions by status.
|
|
116
|
+
# @option opts [String] :company Filter to a single company by its id (`co_...`). Unknown ids return 404.
|
|
117
|
+
# @return [Array<(PortfolioPositionListEnvelope, Integer, Hash)>] PortfolioPositionListEnvelope data, response status code and response headers
|
|
118
|
+
def list_syndicate_portfolio_positions_with_http_info(syndicate_id, opts = {})
|
|
119
|
+
if @api_client.config.debugging
|
|
120
|
+
@api_client.config.logger.debug 'Calling API: SyndicatePortfolioApi.list_syndicate_portfolio_positions ...'
|
|
121
|
+
end
|
|
122
|
+
# verify the required parameter 'syndicate_id' is set
|
|
123
|
+
if @api_client.config.client_side_validation && syndicate_id.nil?
|
|
124
|
+
fail ArgumentError, "Missing the required parameter 'syndicate_id' when calling SyndicatePortfolioApi.list_syndicate_portfolio_positions"
|
|
125
|
+
end
|
|
126
|
+
if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] > 100
|
|
127
|
+
fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling SyndicatePortfolioApi.list_syndicate_portfolio_positions, must be smaller than or equal to 100.'
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
allowable_values = ["active", "exited", "sold", "failed"]
|
|
131
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !allowable_values.include?(opts[:'status'])
|
|
132
|
+
fail ArgumentError, "invalid value for \"status\", must be one of #{allowable_values}"
|
|
133
|
+
end
|
|
134
|
+
# resource path
|
|
135
|
+
local_var_path = '/syndicates/{syndicate_id}/portfolio/positions'.sub('{' + 'syndicate_id' + '}', CGI.escape(syndicate_id.to_s))
|
|
136
|
+
|
|
137
|
+
# query parameters
|
|
138
|
+
query_params = opts[:query_params] || {}
|
|
139
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
140
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
141
|
+
query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
|
|
142
|
+
query_params[:'company'] = opts[:'company'] if !opts[:'company'].nil?
|
|
143
|
+
|
|
144
|
+
# header parameters
|
|
145
|
+
header_params = opts[:header_params] || {}
|
|
146
|
+
# HTTP header 'Accept' (if needed)
|
|
147
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
148
|
+
|
|
149
|
+
# form parameters
|
|
150
|
+
form_params = opts[:form_params] || {}
|
|
151
|
+
|
|
152
|
+
# http body (model)
|
|
153
|
+
post_body = opts[:debug_body]
|
|
154
|
+
|
|
155
|
+
# return_type
|
|
156
|
+
return_type = opts[:debug_return_type] || 'PortfolioPositionListEnvelope'
|
|
157
|
+
|
|
158
|
+
# auth_names
|
|
159
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
160
|
+
|
|
161
|
+
new_options = opts.merge(
|
|
162
|
+
:operation => :"SyndicatePortfolioApi.list_syndicate_portfolio_positions",
|
|
163
|
+
:header_params => header_params,
|
|
164
|
+
:query_params => query_params,
|
|
165
|
+
:form_params => form_params,
|
|
166
|
+
:body => post_body,
|
|
167
|
+
:auth_names => auth_names,
|
|
168
|
+
:return_type => return_type
|
|
169
|
+
)
|
|
170
|
+
|
|
171
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
172
|
+
if @api_client.config.debugging
|
|
173
|
+
@api_client.config.logger.debug "API called: SyndicatePortfolioApi#list_syndicate_portfolio_positions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
174
|
+
end
|
|
175
|
+
return data, status_code, headers
|
|
176
|
+
end
|
|
177
|
+
end
|
|
178
|
+
end
|
|
@@ -0,0 +1,85 @@
|
|
|
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 SyndicateStatisticsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Get syndicate statistics
|
|
23
|
+
# Returns aggregate metrics for a syndicate including member counts, deal counts, total raised, and recent activity. `total_raised` and `total_investors` are computed from directory-selected deals (one per company). `total_deals` and `live_deals` use all linked deals. `total_raised` is whole dollars as a string.
|
|
24
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [SyndicateStatisticsEnvelope]
|
|
27
|
+
def get_syndicate_statistics(syndicate_id, opts = {})
|
|
28
|
+
data, _status_code, _headers = get_syndicate_statistics_with_http_info(syndicate_id, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Get syndicate statistics
|
|
33
|
+
# Returns aggregate metrics for a syndicate including member counts, deal counts, total raised, and recent activity. `total_raised` and `total_investors` are computed from directory-selected deals (one per company). `total_deals` and `live_deals` use all linked deals. `total_raised` is whole dollars as a string.
|
|
34
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(SyndicateStatisticsEnvelope, Integer, Hash)>] SyndicateStatisticsEnvelope data, response status code and response headers
|
|
37
|
+
def get_syndicate_statistics_with_http_info(syndicate_id, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: SyndicateStatisticsApi.get_syndicate_statistics ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'syndicate_id' is set
|
|
42
|
+
if @api_client.config.client_side_validation && syndicate_id.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'syndicate_id' when calling SyndicateStatisticsApi.get_syndicate_statistics"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/syndicates/{syndicate_id}/statistics'.sub('{' + 'syndicate_id' + '}', CGI.escape(syndicate_id.to_s))
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
|
|
56
|
+
# form parameters
|
|
57
|
+
form_params = opts[:form_params] || {}
|
|
58
|
+
|
|
59
|
+
# http body (model)
|
|
60
|
+
post_body = opts[:debug_body]
|
|
61
|
+
|
|
62
|
+
# return_type
|
|
63
|
+
return_type = opts[:debug_return_type] || 'SyndicateStatisticsEnvelope'
|
|
64
|
+
|
|
65
|
+
# auth_names
|
|
66
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
67
|
+
|
|
68
|
+
new_options = opts.merge(
|
|
69
|
+
:operation => :"SyndicateStatisticsApi.get_syndicate_statistics",
|
|
70
|
+
:header_params => header_params,
|
|
71
|
+
:query_params => query_params,
|
|
72
|
+
:form_params => form_params,
|
|
73
|
+
:body => post_body,
|
|
74
|
+
:auth_names => auth_names,
|
|
75
|
+
:return_type => return_type
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
79
|
+
if @api_client.config.debugging
|
|
80
|
+
@api_client.config.logger.debug "API called: SyndicateStatisticsApi#get_syndicate_statistics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
81
|
+
end
|
|
82
|
+
return data, status_code, headers
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,226 @@
|
|
|
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 SyndicatesApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Get syndicate details
|
|
23
|
+
# Returns full details for a specific syndicate including settings, team configuration, and summary metrics.
|
|
24
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [SyndicateDetailEnvelope]
|
|
27
|
+
def get_syndicate(syndicate_id, opts = {})
|
|
28
|
+
data, _status_code, _headers = get_syndicate_with_http_info(syndicate_id, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Get syndicate details
|
|
33
|
+
# Returns full details for a specific syndicate including settings, team configuration, and summary metrics.
|
|
34
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(SyndicateDetailEnvelope, Integer, Hash)>] SyndicateDetailEnvelope data, response status code and response headers
|
|
37
|
+
def get_syndicate_with_http_info(syndicate_id, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: SyndicatesApi.get_syndicate ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'syndicate_id' is set
|
|
42
|
+
if @api_client.config.client_side_validation && syndicate_id.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'syndicate_id' when calling SyndicatesApi.get_syndicate"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/syndicates/{syndicate_id}'.sub('{' + 'syndicate_id' + '}', CGI.escape(syndicate_id.to_s))
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
|
|
56
|
+
# form parameters
|
|
57
|
+
form_params = opts[:form_params] || {}
|
|
58
|
+
|
|
59
|
+
# http body (model)
|
|
60
|
+
post_body = opts[:debug_body]
|
|
61
|
+
|
|
62
|
+
# return_type
|
|
63
|
+
return_type = opts[:debug_return_type] || 'SyndicateDetailEnvelope'
|
|
64
|
+
|
|
65
|
+
# auth_names
|
|
66
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
67
|
+
|
|
68
|
+
new_options = opts.merge(
|
|
69
|
+
:operation => :"SyndicatesApi.get_syndicate",
|
|
70
|
+
:header_params => header_params,
|
|
71
|
+
:query_params => query_params,
|
|
72
|
+
:form_params => form_params,
|
|
73
|
+
:body => post_body,
|
|
74
|
+
:auth_names => auth_names,
|
|
75
|
+
:return_type => return_type
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
79
|
+
if @api_client.config.debugging
|
|
80
|
+
@api_client.config.logger.debug "API called: SyndicatesApi#get_syndicate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
81
|
+
end
|
|
82
|
+
return data, status_code, headers
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# List syndicates
|
|
86
|
+
# Returns syndicates the authenticated user can manage, based on their roles. Results can be filtered by status and sorted by name or creation date.
|
|
87
|
+
# @param [Hash] opts the optional parameters
|
|
88
|
+
# @option opts [String] :cursor Opaque cursor from the previous response's `meta.next_cursor`.
|
|
89
|
+
# @option opts [Integer] :per_page Results per page, 1-100. Defaults to 25. (default to 25)
|
|
90
|
+
# @return [SyndicateListEnvelope]
|
|
91
|
+
def list_syndicates(opts = {})
|
|
92
|
+
data, _status_code, _headers = list_syndicates_with_http_info(opts)
|
|
93
|
+
data
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# List syndicates
|
|
97
|
+
# Returns syndicates the authenticated user can manage, based on their roles. Results can be filtered by status and sorted by name or creation date.
|
|
98
|
+
# @param [Hash] opts the optional parameters
|
|
99
|
+
# @option opts [String] :cursor Opaque cursor from the previous response's `meta.next_cursor`.
|
|
100
|
+
# @option opts [Integer] :per_page Results per page, 1-100. Defaults to 25. (default to 25)
|
|
101
|
+
# @return [Array<(SyndicateListEnvelope, Integer, Hash)>] SyndicateListEnvelope data, response status code and response headers
|
|
102
|
+
def list_syndicates_with_http_info(opts = {})
|
|
103
|
+
if @api_client.config.debugging
|
|
104
|
+
@api_client.config.logger.debug 'Calling API: SyndicatesApi.list_syndicates ...'
|
|
105
|
+
end
|
|
106
|
+
if @api_client.config.client_side_validation && !opts[:'per_page'].nil? && opts[:'per_page'] > 100
|
|
107
|
+
fail ArgumentError, 'invalid value for "opts[:"per_page"]" when calling SyndicatesApi.list_syndicates, must be smaller than or equal to 100.'
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# resource path
|
|
111
|
+
local_var_path = '/syndicates'
|
|
112
|
+
|
|
113
|
+
# query parameters
|
|
114
|
+
query_params = opts[:query_params] || {}
|
|
115
|
+
query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
|
|
116
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
117
|
+
|
|
118
|
+
# header parameters
|
|
119
|
+
header_params = opts[:header_params] || {}
|
|
120
|
+
# HTTP header 'Accept' (if needed)
|
|
121
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
122
|
+
|
|
123
|
+
# form parameters
|
|
124
|
+
form_params = opts[:form_params] || {}
|
|
125
|
+
|
|
126
|
+
# http body (model)
|
|
127
|
+
post_body = opts[:debug_body]
|
|
128
|
+
|
|
129
|
+
# return_type
|
|
130
|
+
return_type = opts[:debug_return_type] || 'SyndicateListEnvelope'
|
|
131
|
+
|
|
132
|
+
# auth_names
|
|
133
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
134
|
+
|
|
135
|
+
new_options = opts.merge(
|
|
136
|
+
:operation => :"SyndicatesApi.list_syndicates",
|
|
137
|
+
:header_params => header_params,
|
|
138
|
+
:query_params => query_params,
|
|
139
|
+
:form_params => form_params,
|
|
140
|
+
:body => post_body,
|
|
141
|
+
:auth_names => auth_names,
|
|
142
|
+
:return_type => return_type
|
|
143
|
+
)
|
|
144
|
+
|
|
145
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
146
|
+
if @api_client.config.debugging
|
|
147
|
+
@api_client.config.logger.debug "API called: SyndicatesApi#list_syndicates\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
148
|
+
end
|
|
149
|
+
return data, status_code, headers
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
# Update syndicate settings
|
|
153
|
+
# Update syndicate configuration. Currently supports name, description, and tagline. Requires `write:syndicates` scope and at least operator permission.
|
|
154
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
155
|
+
# @param update_syndicate_request [UpdateSyndicateRequest]
|
|
156
|
+
# @param [Hash] opts the optional parameters
|
|
157
|
+
# @return [SyndicateDetailEnvelope]
|
|
158
|
+
def update_syndicate(syndicate_id, update_syndicate_request, opts = {})
|
|
159
|
+
data, _status_code, _headers = update_syndicate_with_http_info(syndicate_id, update_syndicate_request, opts)
|
|
160
|
+
data
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
# Update syndicate settings
|
|
164
|
+
# Update syndicate configuration. Currently supports name, description, and tagline. Requires `write:syndicates` scope and at least operator permission.
|
|
165
|
+
# @param syndicate_id [String] The syndicate's id (`syn_...`).
|
|
166
|
+
# @param update_syndicate_request [UpdateSyndicateRequest]
|
|
167
|
+
# @param [Hash] opts the optional parameters
|
|
168
|
+
# @return [Array<(SyndicateDetailEnvelope, Integer, Hash)>] SyndicateDetailEnvelope data, response status code and response headers
|
|
169
|
+
def update_syndicate_with_http_info(syndicate_id, update_syndicate_request, opts = {})
|
|
170
|
+
if @api_client.config.debugging
|
|
171
|
+
@api_client.config.logger.debug 'Calling API: SyndicatesApi.update_syndicate ...'
|
|
172
|
+
end
|
|
173
|
+
# verify the required parameter 'syndicate_id' is set
|
|
174
|
+
if @api_client.config.client_side_validation && syndicate_id.nil?
|
|
175
|
+
fail ArgumentError, "Missing the required parameter 'syndicate_id' when calling SyndicatesApi.update_syndicate"
|
|
176
|
+
end
|
|
177
|
+
# verify the required parameter 'update_syndicate_request' is set
|
|
178
|
+
if @api_client.config.client_side_validation && update_syndicate_request.nil?
|
|
179
|
+
fail ArgumentError, "Missing the required parameter 'update_syndicate_request' when calling SyndicatesApi.update_syndicate"
|
|
180
|
+
end
|
|
181
|
+
# resource path
|
|
182
|
+
local_var_path = '/syndicates/{syndicate_id}'.sub('{' + 'syndicate_id' + '}', CGI.escape(syndicate_id.to_s))
|
|
183
|
+
|
|
184
|
+
# query parameters
|
|
185
|
+
query_params = opts[:query_params] || {}
|
|
186
|
+
|
|
187
|
+
# header parameters
|
|
188
|
+
header_params = opts[:header_params] || {}
|
|
189
|
+
# HTTP header 'Accept' (if needed)
|
|
190
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
191
|
+
# HTTP header 'Content-Type'
|
|
192
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
193
|
+
if !content_type.nil?
|
|
194
|
+
header_params['Content-Type'] = content_type
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# form parameters
|
|
198
|
+
form_params = opts[:form_params] || {}
|
|
199
|
+
|
|
200
|
+
# http body (model)
|
|
201
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(update_syndicate_request)
|
|
202
|
+
|
|
203
|
+
# return_type
|
|
204
|
+
return_type = opts[:debug_return_type] || 'SyndicateDetailEnvelope'
|
|
205
|
+
|
|
206
|
+
# auth_names
|
|
207
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth', 'bearerAuth']
|
|
208
|
+
|
|
209
|
+
new_options = opts.merge(
|
|
210
|
+
:operation => :"SyndicatesApi.update_syndicate",
|
|
211
|
+
:header_params => header_params,
|
|
212
|
+
:query_params => query_params,
|
|
213
|
+
:form_params => form_params,
|
|
214
|
+
:body => post_body,
|
|
215
|
+
:auth_names => auth_names,
|
|
216
|
+
:return_type => return_type
|
|
217
|
+
)
|
|
218
|
+
|
|
219
|
+
data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
|
|
220
|
+
if @api_client.config.debugging
|
|
221
|
+
@api_client.config.logger.debug "API called: SyndicatesApi#update_syndicate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
222
|
+
end
|
|
223
|
+
return data, status_code, headers
|
|
224
|
+
end
|
|
225
|
+
end
|
|
226
|
+
end
|