diff --git a/Directory.Packages.props b/Directory.Packages.props index 4ed77cc..a706f5e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,10 +6,10 @@ - - - - + + + + diff --git a/biome.json b/biome.json index f7da9c1..373b952 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.4.14/schema.json", + "$schema": "https://biomejs.dev/schemas/2.4.16/schema.json", "vcs": { "enabled": true, "clientKind": "git", diff --git a/docs/biome.json b/docs/biome.json index c0d4652..6f4fcf2 100644 --- a/docs/biome.json +++ b/docs/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.4.14/schema.json", + "$schema": "https://biomejs.dev/schemas/2.4.16/schema.json", "root": false, "extends": "//", "files": { diff --git a/docs/package.json b/docs/package.json index 1235dc8..10b155b 100644 --- a/docs/package.json +++ b/docs/package.json @@ -18,9 +18,9 @@ "check": "biome check --write" }, "dependencies": { - "@astrojs/starlight": "0.39.2", - "astro": "6.3.3", + "@astrojs/starlight": "0.39.3", + "astro": "6.3.8", "sharp": "0.34.5", - "vite": "7.3.3" + "vite": "7.3.5" } } diff --git a/examples/OpenApiCodeGenerator.Examples/output/github-api-next.cs b/examples/OpenApiCodeGenerator.Examples/output/github-api-next.cs index 605ae73..5762ab1 100644 --- a/examples/OpenApiCodeGenerator.Examples/output/github-api-next.cs +++ b/examples/OpenApiCodeGenerator.Examples/output/github-api-next.cs @@ -136,6 +136,22 @@ public enum RepositoryRuleRequiredSignaturesType RequiredSignatures } +/// +/// The type of the actor +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum RepositoryRuleParamsActorType +{ + [JsonStringEnumMemberName("User")] + User, + [JsonStringEnumMemberName("Team")] + Team, + [JsonStringEnumMemberName("IntegrationInstallation")] + IntegrationInstallation, + [JsonStringEnumMemberName("RepositoryRole")] + RepositoryRole +} + /// /// The type of the reviewer /// @@ -203,52 +219,52 @@ public enum RepositoryRuleTagNamePatternType } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleFilePathRestrictionType +public enum RepositoryRuleWorkflowsType { - [JsonStringEnumMemberName("file_path_restriction")] - FilePathRestriction + [JsonStringEnumMemberName("workflows")] + Workflows } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleMaxFilePathLengthType +public enum RepositoryRuleCodeScanningType { - [JsonStringEnumMemberName("max_file_path_length")] - MaxFilePathLength + [JsonStringEnumMemberName("code_scanning")] + CodeScanning } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleFileExtensionRestrictionType +public enum RepositoryRuleCopilotCodeReviewType { - [JsonStringEnumMemberName("file_extension_restriction")] - FileExtensionRestriction + [JsonStringEnumMemberName("copilot_code_review")] + CopilotCodeReview } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleMaxFileSizeType +public enum RepositoryRuleFilePathRestrictionType { - [JsonStringEnumMemberName("max_file_size")] - MaxFileSize + [JsonStringEnumMemberName("file_path_restriction")] + FilePathRestriction } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleWorkflowsType +public enum RepositoryRuleMaxFilePathLengthType { - [JsonStringEnumMemberName("workflows")] - Workflows + [JsonStringEnumMemberName("max_file_path_length")] + MaxFilePathLength } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleCodeScanningType +public enum RepositoryRuleFileExtensionRestrictionType { - [JsonStringEnumMemberName("code_scanning")] - CodeScanning + [JsonStringEnumMemberName("file_extension_restriction")] + FileExtensionRestriction } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleCopilotCodeReviewType +public enum RepositoryRuleMaxFileSizeType { - [JsonStringEnumMemberName("copilot_code_review")] - CopilotCodeReview + [JsonStringEnumMemberName("max_file_size")] + MaxFileSize } /// @@ -514,6 +530,18 @@ public enum Checks Write } +/// +/// The level of permission to grant the access token to view and manage code quality data. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CodeQuality +{ + [JsonStringEnumMemberName("read")] + Read, + [JsonStringEnumMemberName("write")] + Write +} + /// /// The level of permission to grant the access token to create, edit, delete, and list Codespaces. /// @@ -858,12 +886,14 @@ public enum OrganizationCustomProperties [JsonConverter(typeof(JsonStringEnumConverter))] public enum OrganizationCopilotSeatManagement { + [JsonStringEnumMemberName("read")] + Read, [JsonStringEnumMemberName("write")] Write } /// -/// The level of permission to grant the access token to view and manage Copilot coding agent settings for an organization. +/// The level of permission to grant the access token to view and manage Copilot cloud agent settings for an organization. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum OrganizationCopilotAgentSettings @@ -1516,7 +1546,7 @@ public enum CodeScanningDefaultSetupOptionsRunnerType /// Runner type to be used. /// [JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningDefaultSetupRunnerType +public enum CodeQualitySetupRunnerType { [JsonStringEnumMemberName("standard")] Standard, @@ -1530,7 +1560,7 @@ public enum CodeScanningDefaultSetupRunnerType /// Runner type to be used. /// [JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningDefaultSetupUpdateRunnerType +public enum CodeQualitySetupUpdateRunnerType { [JsonStringEnumMemberName("standard")] Standard, @@ -2071,6 +2101,18 @@ public enum WorkflowState DisabledManually } +/// +/// Code quality setup has been configured or not. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CodeQualitySetupState +{ + [JsonStringEnumMemberName("configured")] + Configured, + [JsonStringEnumMemberName("not-configured")] + NotConfigured +} + /// /// State of a code scanning alert instance. /// @@ -2085,18 +2127,6 @@ public enum CodeScanningAlertInstanceListState Unknown } -/// -/// Code scanning default setup has been configured or not. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningDefaultSetupState -{ - [JsonStringEnumMemberName("configured")] - Configured, - [JsonStringEnumMemberName("not-configured")] - NotConfigured -} - /// /// The state of the status. /// @@ -2223,6 +2253,32 @@ public enum CodeScanningOrganizationAlertItemsDismissedReason Unknown } +/// +/// The default repository access level for Dependabot updates. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum DefaultLevel +{ + [JsonStringEnumMemberName("public")] + Public, + [JsonStringEnumMemberName("internal")] + Internal, + [JsonStringEnumMemberName("")] + Unknown +} + +/// +/// Whether team members will receive notifications when the team is mentioned. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum NotificationSetting +{ + [JsonStringEnumMemberName("notifications_enabled")] + NotificationsEnabled, + [JsonStringEnumMemberName("notifications_disabled")] + NotificationsDisabled +} + /// /// How the author is associated with the repository. /// @@ -2343,6 +2399,8 @@ public enum IssueFieldValueDataType Text, [JsonStringEnumMemberName("single_select")] SingleSelect, + [JsonStringEnumMemberName("multi_select")] + MultiSelect, [JsonStringEnumMemberName("number")] Number, [JsonStringEnumMemberName("date")] @@ -2361,6 +2419,8 @@ public enum IssueFieldDataType Date, [JsonStringEnumMemberName("single_select")] SingleSelect, + [JsonStringEnumMemberName("multi_select")] + MultiSelect, [JsonStringEnumMemberName("number")] Number } @@ -2415,7 +2475,7 @@ public enum PriceModel } /// -/// The type of scope for the budget +/// The scope of the budget /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum BudgetScope @@ -2427,7 +2487,11 @@ public enum BudgetScope [JsonStringEnumMemberName("repository")] Repository, [JsonStringEnumMemberName("cost_center")] - CostCenter + CostCenter, + [JsonStringEnumMemberName("multi_user_customer")] + MultiUserCustomer, + [JsonStringEnumMemberName("user")] + User } /// @@ -2643,6 +2707,68 @@ public enum Location WestUs2 } +/// +/// The base role that determines default permissions. +/// - `no_access`: No default access +/// - `reader`: Default read permissions +/// - `writer`: Default write permissions (organization spaces only) +/// - `admin`: Default admin permissions (organization spaces only) +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CopilotSpaceBaseRole +{ + [JsonStringEnumMemberName("reader")] + Reader, + [JsonStringEnumMemberName("writer")] + Writer, + [JsonStringEnumMemberName("admin")] + Admin, + [JsonStringEnumMemberName("no_access")] + NoAccess +} + +/// +/// The system role from which this role inherits permissions. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum OrganizationRoleBaseRole +{ + [JsonStringEnumMemberName("read")] + Read, + [JsonStringEnumMemberName("triage")] + Triage, + [JsonStringEnumMemberName("write")] + Write, + [JsonStringEnumMemberName("maintain")] + Maintain, + [JsonStringEnumMemberName("admin")] + Admin, + [JsonStringEnumMemberName("")] + Unknown +} + +/// +/// The type of the resource. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum ResourceType +{ + [JsonStringEnumMemberName("repository")] + Repository, + [JsonStringEnumMemberName("github_file")] + GithubFile, + [JsonStringEnumMemberName("free_text")] + FreeText, + [JsonStringEnumMemberName("github_issue")] + GithubIssue, + [JsonStringEnumMemberName("github_pull_request")] + GithubPullRequest, + [JsonStringEnumMemberName("media_content")] + MediaContent, + [JsonStringEnumMemberName("uploaded_text_file")] + UploadedTextFile +} + /// /// The organization policy for allowing or blocking suggestions matching public code (duplication detection filter). /// @@ -2741,20 +2867,6 @@ public enum CopilotSeatDetailsPlanType Unknown } -/// -/// The default repository access level for Dependabot updates. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum DefaultLevel -{ - [JsonStringEnumMemberName("public")] - Public, - [JsonStringEnumMemberName("internal")] - Internal, - [JsonStringEnumMemberName("")] - Unknown -} - [JsonConverter(typeof(JsonStringEnumConverter))] public enum PackageType { @@ -2830,26 +2942,6 @@ public enum TeamMembershipRole Maintainer } -/// -/// The system role from which this role inherits permissions. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum BaseRole -{ - [JsonStringEnumMemberName("read")] - Read, - [JsonStringEnumMemberName("triage")] - Triage, - [JsonStringEnumMemberName("write")] - Write, - [JsonStringEnumMemberName("maintain")] - Maintain, - [JsonStringEnumMemberName("admin")] - Admin, - [JsonStringEnumMemberName("")] - Unknown -} - /// /// Determines if the team has a direct, indirect, or mixed relationship to a role /// @@ -2919,7 +3011,9 @@ public enum AuthType [JsonStringEnumMemberName("oidc_jfrog")] OidcJfrog, [JsonStringEnumMemberName("oidc_cloudsmith")] - OidcCloudsmith + OidcCloudsmith, + [JsonStringEnumMemberName("oidc_gcp")] + OidcGcp } /// @@ -3037,7 +3131,9 @@ public enum ActorType [JsonStringEnumMemberName("Team")] Team, [JsonStringEnumMemberName("DeployKey")] - DeployKey + DeployKey, + [JsonStringEnumMemberName("User")] + User } /// @@ -3298,18 +3394,6 @@ public enum WebhooksTeamPrivacy Secret } -/// -/// The notification setting the team has set -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum NotificationSetting -{ - [JsonStringEnumMemberName("notifications_enabled")] - NotificationsEnabled, - [JsonStringEnumMemberName("notifications_disabled")] - NotificationsDisabled -} - /// /// The outcome of the job. /// @@ -3450,6 +3534,18 @@ public enum ActivityType MergeQueueMerge } +/// +/// The frequency of the periodic analysis. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum Schedule +{ + [JsonStringEnumMemberName("weekly")] + Weekly, + [JsonStringEnumMemberName("")] + Unknown +} + /// /// The language targeted by the CodeQL query /// @@ -3536,18 +3632,6 @@ public enum ThreatModel RemoteAndLocal } -/// -/// The frequency of the periodic analysis. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum Schedule -{ - [JsonStringEnumMemberName("weekly")] - Weekly, - [JsonStringEnumMemberName("")] - Unknown -} - /// /// `pending` files have not yet been processed, while `complete` means results from the SARIF have been stored. `failed` files have either not been processed at all, or could only be partially processed. /// @@ -3650,6 +3734,18 @@ public enum WebhookMembershipRemovedScope Organization } +/// +/// The Git hash algorithm used by this repository. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum HashAlgorithm +{ + [JsonStringEnumMemberName("sha1")] + Sha1, + [JsonStringEnumMemberName("sha256")] + Sha256 +} + /// /// The side of the first line of the range for a multi-line comment. /// @@ -4265,6 +4361,20 @@ public enum WebhookIssuesDemilestonedAction Demilestoned } +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum WebhookIssuesFieldAddedAction +{ + [JsonStringEnumMemberName("field_added")] + FieldAdded +} + +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum WebhookIssuesFieldRemovedAction +{ + [JsonStringEnumMemberName("field_removed")] + FieldRemoved +} + [JsonConverter(typeof(JsonStringEnumConverter))] public enum WebhookIssuesMilestonedAction { @@ -5640,6 +5750,12 @@ public record AppPermissions [JsonPropertyName("checks")] public Checks? Checks { get; init; } + /// + /// The level of permission to grant the access token to view and manage code quality data. + /// + [JsonPropertyName("code_quality")] + public CodeQuality? CodeQuality { get; init; } + /// /// The level of permission to grant the access token to create, edit, delete, and list Codespaces. /// @@ -5815,7 +5931,7 @@ public record AppPermissions public OrganizationCopilotSeatManagement? OrganizationCopilotSeatManagement { get; init; } /// - /// The level of permission to grant the access token to view and manage Copilot coding agent settings for an organization. + /// The level of permission to grant the access token to view and manage Copilot cloud agent settings for an organization. /// [JsonPropertyName("organization_copilot_agent_settings")] public OrganizationCopilotAgentSettings? OrganizationCopilotAgentSettings { get; init; } @@ -8132,6 +8248,22 @@ public record DependabotAlertWithRepository } +/// +/// Information about repositories that Dependabot is able to access in an organization +/// +public record DependabotRepositoryAccessDetails +{ + /// + /// The default repository access level for Dependabot updates. + /// + [JsonPropertyName("default_level")] + public DefaultLevel? DefaultLevel { get; init; } + + [JsonPropertyName("accessible_repositories")] + public IReadOnlyList? AccessibleRepositories { get; init; } + +} + /// /// Group of enterprise owners and/or members /// @@ -8182,6 +8314,12 @@ public record EnterpriseTeam [JsonPropertyName("updated_at")] public required DateTimeOffset UpdatedAt { get; init; } + /// + /// Whether team members will receive notifications when the team is mentioned. + /// + [JsonPropertyName("notification_setting")] + public NotificationSetting? NotificationSetting { get; init; } + } /// @@ -8450,7 +8588,7 @@ public record Milestone } /// -/// The type of issue. +/// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// public record IssueType { @@ -8700,6 +8838,12 @@ public record IssueFieldValue [JsonPropertyName("single_select_option")] public object? SingleSelectOption { get; init; } + /// + /// Details about the selected options + /// + [JsonPropertyName("multi_select_options")] + public IReadOnlyList? MultiSelectOptions { get; init; } + } /// @@ -8819,7 +8963,7 @@ public record Issue public Uri? TimelineUrl { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -10115,6 +10259,40 @@ public record ActionsCacheStorageLimitForOrganization } +public record BillingAiCreditUsageReportOrg +{ + [JsonPropertyName("timePeriod")] + public required object TimePeriod { get; init; } + + /// + /// The unique identifier of the organization. + /// + [JsonPropertyName("organization")] + public required string Organization { get; init; } + + /// + /// The name of the user for the usage report. + /// + [JsonPropertyName("user")] + public string? User { get; init; } + + /// + /// The product for the usage report. + /// + [JsonPropertyName("product")] + public string? Product { get; init; } + + /// + /// The model for the usage report. + /// + [JsonPropertyName("model")] + public string? Model { get; init; } + + [JsonPropertyName("usageItems")] + public required IReadOnlyList UsageItems { get; init; } + +} + public record Budget { /// @@ -10142,10 +10320,10 @@ public record Budget public required bool PreventFurtherUsage { get; init; } /// - /// The scope of the budget (enterprise, organization, repository, cost center) + /// The scope of the budget /// [JsonPropertyName("budget_scope")] - public required string BudgetScope { get; init; } + public required BudgetScope BudgetScope { get; init; } /// /// The name of the entity for the budget (enterprise does not require a name). @@ -10153,6 +10331,12 @@ public record Budget [JsonPropertyName("budget_entity_name")] public string? BudgetEntityName { get; init; } + /// + /// The user login when the budget is scoped to a single user (`user` scope). + /// + [JsonPropertyName("user")] + public string? User { get; init; } + /// /// A single product or sku to apply the budget to. /// @@ -10172,6 +10356,18 @@ public record GetAllBudgets [JsonPropertyName("budgets")] public required IReadOnlyList Budgets { get; init; } + /// + /// User login included when the response is scoped with the `user` query parameter. + /// + [JsonPropertyName("user")] + public string? User { get; init; } + + /// + /// Effective user-level budget details returned when the response is scoped with the `user` query parameter. + /// + [JsonPropertyName("effective_budget")] + public object? EffectiveBudget { get; init; } + /// /// Indicates if there are more pages of results available (maps to hasNextPage from billing platform) /// @@ -10186,6 +10382,19 @@ public record GetAllBudgets } +public record CreateBudget +{ + /// + /// A message indicating the result of the create operation + /// + [JsonPropertyName("message")] + public required string Message { get; init; } + + [JsonPropertyName("budget")] + public required object Budget { get; init; } + +} + public record GetBudget { /// @@ -10206,6 +10415,12 @@ public record GetBudget [JsonPropertyName("budget_entity_name")] public required string BudgetEntityName { get; init; } + /// + /// The user login when the budget is scoped to a single user (`user` scope). + /// + [JsonPropertyName("user")] + public string? User { get; init; } + /// /// The budget amount in whole dollars. For license-based products, this represents the number of licenses. /// @@ -10235,6 +10450,19 @@ public record GetBudget } +public record UpdateBudget +{ + /// + /// A message indicating the result of the update operation + /// + [JsonPropertyName("message")] + public required string Message { get; init; } + + [JsonPropertyName("budget")] + public required object Budget { get; init; } + +} + public record DeleteBudget { /// @@ -10953,6 +11181,12 @@ public record OidcCustomSub [JsonPropertyName("include_claim_keys")] public required IReadOnlyList IncludeClaimKeys { get; init; } + /// + /// Whether to opt in to the immutable OIDC subject claim format for the organization. When `true`, new OIDC tokens will use a stable, repository-ID-based `sub` claim instead of the name-based format. + /// + [JsonPropertyName("use_immutable_subject")] + public bool? UseImmutableSubject { get; init; } + } /// @@ -11367,6 +11601,12 @@ public record Runner [JsonPropertyName("ephemeral")] public bool? Ephemeral { get; init; } + /// + /// The version of the GitHub Actions Runner software. This is only set if the runner has connected to the service at least once. + /// + [JsonPropertyName("version")] + public string? Version { get; init; } + } /// @@ -12588,6 +12828,145 @@ public record CodespacesPublicKey } +/// +/// A GitHub Copilot Space represents an interactive AI workspace where users can ask questions and get assistance. +/// +public record CopilotSpace +{ + /// + /// The unique identifier of the space. + /// + [JsonPropertyName("id")] + public required long Id { get; init; } + + /// + /// The number that identifies the space within its owner. + /// + [JsonPropertyName("number")] + public required int Number { get; init; } + + /// + /// The display name of the space. + /// + [JsonPropertyName("name")] + public required string Name { get; init; } + + /// + /// A description of the space. + /// + [JsonPropertyName("description")] + public string? Description { get; init; } + + /// + /// General instructions for the Copilot Space. + /// + [JsonPropertyName("general_instructions")] + public string? GeneralInstructions { get; init; } + + /// + /// The base role that determines default permissions. + /// - `no_access`: No default access + /// - `reader`: Default read permissions + /// - `writer`: Default write permissions (organization spaces only) + /// - `admin`: Default admin permissions (organization spaces only) + /// + [JsonPropertyName("base_role")] + public required CopilotSpaceBaseRole BaseRole { get; init; } + + /// + /// The user or organization that owns this space. + /// + [JsonPropertyName("owner")] + public required object Owner { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("creator")] + public required SimpleUser Creator { get; init; } + + /// + /// The date and time the space was created. + /// + [JsonPropertyName("created_at")] + public required DateTimeOffset CreatedAt { get; init; } + + /// + /// The date and time the space was last updated. + /// + [JsonPropertyName("updated_at")] + public required DateTimeOffset UpdatedAt { get; init; } + + /// + /// The HTML URL of the space. + /// + [JsonPropertyName("html_url")] + public required Uri HtmlUrl { get; init; } + + /// + /// The API URL of the space. + /// + [JsonPropertyName("api_url")] + public required Uri ApiUrl { get; init; } + + /// + /// Resources attached to the space. + /// + [JsonPropertyName("resources_attributes")] + public IReadOnlyList? ResourcesAttributes { get; init; } + +} + +/// +/// A collaborator (user or team) of a Copilot Space +/// +public record CopilotSpaceCollaborator +{ +} + +/// +/// A resource attached to a Copilot Space. +/// +public record CopilotSpaceResource +{ + /// + /// The unique identifier of the resource. + /// + [JsonPropertyName("id")] + public required int Id { get; init; } + + /// + /// The type of the resource. + /// + [JsonPropertyName("resource_type")] + public required ResourceType ResourceType { get; init; } + + /// + /// The ID of the associated chat attachment, if any. + /// + [JsonPropertyName("copilot_chat_attachment_id")] + public int? CopilotChatAttachmentId { get; init; } + + /// + /// Resource-specific metadata. The keys and values depend on the resource type. + /// + [JsonPropertyName("metadata")] + public required object Metadata { get; init; } + + /// + /// The date and time the resource was created. + /// + [JsonPropertyName("created_at")] + public required DateTimeOffset CreatedAt { get; init; } + + /// + /// The date and time the resource was last updated. + /// + [JsonPropertyName("updated_at")] + public required DateTimeOffset UpdatedAt { get; init; } + +} + /// /// The breakdown of Copilot Business seats for the organization. /// @@ -12871,22 +13250,6 @@ public record CopilotUsageMetricsDay } -/// -/// Information about repositories that Dependabot is able to access in an organization -/// -public record DependabotRepositoryAccessDetails -{ - /// - /// The default repository access level for Dependabot updates. - /// - [JsonPropertyName("default_level")] - public DefaultLevel? DefaultLevel { get; init; } - - [JsonPropertyName("accessible_repositories")] - public IReadOnlyList? AccessibleRepositories { get; init; } - -} - /// /// Secrets for GitHub Dependabot for an organization. /// @@ -13220,7 +13583,7 @@ public record IssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Available options for single select fields. + /// Available options for single select and multi select fields. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -13266,7 +13629,7 @@ public record OrganizationCreateIssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Options for single select fields. Required when data_type is 'single_select'. + /// Options for select fields. Required when data_type is 'single_select' or 'multi_select'. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -13294,7 +13657,7 @@ public record OrganizationUpdateIssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Options for single select fields. Only applicable when updating single_select fields. When provided, this array **replaces** the entire existing set of options rather than adding to or updating individual options. To retain or update an existing option, include it in the array with its `id`. Options sent without an `id` are treated as new options and may cause existing options to be deleted and recreated. + /// Options for select fields. Only applicable when updating single_select or multi_select fields. When provided, this array **replaces** the entire existing set of options rather than adding to or updating individual options. To retain or update an existing option, include it in the array with its `id`. Options sent without an `id` are treated as new options and may cause existing options to be deleted and recreated. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -13501,7 +13864,7 @@ public record OrganizationRole /// The system role from which this role inherits permissions. /// [JsonPropertyName("base_role")] - public BaseRole? BaseRole { get; init; } + public OrganizationRoleBaseRole? BaseRole { get; init; } /// /// Source answers the question, "where did this role come from?" @@ -14013,6 +14376,18 @@ public record OrgPrivateRegistryConfiguration [JsonPropertyName("api_host")] public string? ApiHost { get; init; } + /// + /// The full resource name of the GCP Workload Identity Provider (e.g. `projects/<NUM>/locations/global/workloadIdentityPools/<POOL>/providers/<PROVIDER>`). + /// + [JsonPropertyName("workload_identity_provider")] + public string? WorkloadIdentityProvider { get; init; } + + /// + /// The GCP service account email to impersonate. If omitted, the federated token is used directly (direct WIF). + /// + [JsonPropertyName("service_account")] + public string? ServiceAccount { get; init; } + [JsonPropertyName("created_at")] public required DateTimeOffset CreatedAt { get; init; } @@ -14152,6 +14527,18 @@ public record OrgPrivateRegistryConfigurationWithSelectedRepositories [JsonPropertyName("api_host")] public string? ApiHost { get; init; } + /// + /// The full resource name of the GCP Workload Identity Provider (e.g. `projects/<NUM>/locations/global/workloadIdentityPools/<POOL>/providers/<PROVIDER>`). + /// + [JsonPropertyName("workload_identity_provider")] + public string? WorkloadIdentityProvider { get; init; } + + /// + /// The GCP service account email to impersonate. If omitted, the federated token is used directly (direct WIF). + /// + [JsonPropertyName("service_account")] + public string? ServiceAccount { get; init; } + [JsonPropertyName("created_at")] public required DateTimeOffset CreatedAt { get; init; } @@ -15547,7 +15934,7 @@ public enum RepositoryRuleEnforcement public record RepositoryRulesetBypassActor { /// - /// The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, and `Team` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories. + /// The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories. /// [JsonPropertyName("actor_id")] public int? ActorId { get; init; } @@ -15720,6 +16107,44 @@ public record RepositoryRuleRequiredSignatures } +/// +/// An actor allowed to dismiss pull request reviews +/// +public record RepositoryRuleParamsActor +{ + /// + /// ID of the actor that can dismiss reviews. + /// + [JsonPropertyName("id")] + public required int Id { get; init; } + + /// + /// The type of the actor + /// + [JsonPropertyName("type")] + public required RepositoryRuleParamsActorType Type { get; init; } + +} + +/// +/// Specify people, teams, or apps allowed to dismiss pull request reviews. +/// +public record RepositoryRuleParamsDismissalRestriction +{ + /// + /// Specify people, teams, or apps allowed to dismiss pull request reviews. + /// + [JsonPropertyName("allowed_actors")] + public IReadOnlyList? AllowedActors { get; init; } + + /// + /// Whether to restrict review dismissal to specific actors. + /// + [JsonPropertyName("enabled")] + public required bool Enabled { get; init; } + +} + /// /// A required reviewing team /// @@ -15884,58 +16309,6 @@ public record RepositoryRuleTagNamePattern } -/// -/// Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names. -/// -public record RepositoryRuleFilePathRestriction -{ - [JsonPropertyName("type")] - public required RepositoryRuleFilePathRestrictionType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph. -/// -public record RepositoryRuleMaxFilePathLength -{ - [JsonPropertyName("type")] - public required RepositoryRuleMaxFilePathLengthType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits that include files with specified file extensions from being pushed to the commit graph. -/// -public record RepositoryRuleFileExtensionRestriction -{ - [JsonPropertyName("type")] - public required RepositoryRuleFileExtensionRestrictionType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph. -/// -public record RepositoryRuleMaxFileSize -{ - [JsonPropertyName("type")] - public required RepositoryRuleMaxFileSizeType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - /// /// Restricted commit /// @@ -16050,6 +16423,58 @@ public record RepositoryRuleCopilotCodeReview } +/// +/// Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names. +/// +public record RepositoryRuleFilePathRestriction +{ + [JsonPropertyName("type")] + public required RepositoryRuleFilePathRestrictionType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph. +/// +public record RepositoryRuleMaxFilePathLength +{ + [JsonPropertyName("type")] + public required RepositoryRuleMaxFilePathLengthType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits that include files with specified file extensions from being pushed to the commit graph. +/// +public record RepositoryRuleFileExtensionRestriction +{ + [JsonPropertyName("type")] + public required RepositoryRuleFileExtensionRestrictionType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph. +/// +public record RepositoryRuleMaxFileSize +{ + [JsonPropertyName("type")] + public required RepositoryRuleMaxFileSizeType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + /// /// A repository rule. /// @@ -18009,6 +18434,45 @@ public record ActionsCacheList } +/// +/// A list of active concurrency groups for a repository. +/// +public record ConcurrencyGroupList +{ + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("concurrency_groups")] + public required IReadOnlyList ConcurrencyGroups { get; init; } + +} + +/// +/// A concurrency group with the workflow runs and jobs that are either currently holding +/// or waiting for the concurrency group lease. +/// +public record ConcurrencyGroup +{ + /// + /// The name of the concurrency group. + /// + [JsonPropertyName("group_name")] + public required string GroupName { get; init; } + + /// + /// API URL for this concurrency group. + /// + [JsonPropertyName("group_url")] + public required Uri GroupUrl { get; init; } + + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("group_members")] + public required IReadOnlyList GroupMembers { get; init; } + +} + /// /// Information of a job execution in a workflow run /// @@ -18156,6 +18620,18 @@ public record OidcCustomSubRepo [JsonPropertyName("include_claim_keys")] public IReadOnlyList? IncludeClaimKeys { get; init; } + /// + /// Whether the repository has opted in to the immutable OIDC subject claim format. When `true`, OIDC tokens will use a stable, repository-ID-based `sub` claim. If not set at the repository level, falls back to the organization-level setting. + /// + [JsonPropertyName("use_immutable_subject")] + public bool? UseImmutableSubject { get; init; } + + /// + /// The current `sub` claim prefix for this repository. + /// + [JsonPropertyName("sub_claim_prefix")] + public string? SubClaimPrefix { get; init; } + } /// @@ -18538,6 +19014,26 @@ public record EnvironmentApprovals } +/// +/// A list of concurrency groups associated with a workflow run. +/// +public record ConcurrencyGroupRunList +{ + /// + /// The total number of concurrency groups this workflow run participates in, + /// derived from the run's configuration. This count is not filtered by + /// whether the run currently holds or is waiting in each group, so it can + /// include groups whose `group_members` array is empty (for example, when + /// the run has already released its lease in that group). + /// + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("concurrency_groups")] + public required IReadOnlyList ConcurrencyGroups { get; init; } + +} + public record ReviewCustomGatesCommentRequired { /// @@ -19593,6 +20089,100 @@ public record CheckSuitePreference } +/// +/// Configuration for code quality setup. +/// +public record CodeQualitySetup +{ + /// + /// Code quality setup has been configured or not. + /// + [JsonPropertyName("state")] + public CodeQualitySetupState? State { get; init; } + + /// + /// Languages to be analyzed. + /// + [JsonPropertyName("languages")] + public IReadOnlyList? Languages { get; init; } + + /// + /// Runner type to be used. + /// + [JsonPropertyName("runner_type")] + public CodeQualitySetupRunnerType? RunnerType { get; init; } + + /// + /// Runner label to be used if the runner type is labeled. + /// + [JsonPropertyName("runner_label")] + public string? RunnerLabel { get; init; } + + /// + /// Timestamp of latest configuration update. + /// + [JsonPropertyName("updated_at")] + public DateTimeOffset? UpdatedAt { get; init; } + + /// + /// The frequency of the periodic analysis. + /// + [JsonPropertyName("schedule")] + public Schedule? Schedule { get; init; } + +} + +/// +/// Configuration for code quality setup. +/// +public record CodeQualitySetupUpdate +{ + /// + /// The desired state of code quality setup. + /// + [JsonPropertyName("state")] + public CodeQualitySetupState? State { get; init; } + + /// + /// Runner type to be used. + /// + [JsonPropertyName("runner_type")] + public CodeQualitySetupUpdateRunnerType? RunnerType { get; init; } + + /// + /// Runner label to be used if the runner type is labeled. + /// + [JsonPropertyName("runner_label")] + public string? RunnerLabel { get; init; } + + /// + /// Languages to be analyzed. + /// + [JsonPropertyName("languages")] + public IReadOnlyList? Languages { get; init; } + +} + +/// +/// You can use `run_url` to track the status of the run. This includes a property status and conclusion. +/// You should not rely on this always being an actions workflow run object. +/// +public record CodeQualitySetupUpdateResponse +{ + /// + /// ID of the corresponding run. + /// + [JsonPropertyName("run_id")] + public int? RunId { get; init; } + + /// + /// URL of the corresponding run. + /// + [JsonPropertyName("run_url")] + public string? RunUrl { get; init; } + +} + public record CodeScanningAlertItems { /// @@ -20497,7 +21087,7 @@ public record CodeScanningDefaultSetup /// Code scanning default setup has been configured or not. /// [JsonPropertyName("state")] - public CodeScanningDefaultSetupState? State { get; init; } + public CodeQualitySetupState? State { get; init; } /// /// Languages to be analyzed. @@ -20509,7 +21099,7 @@ public record CodeScanningDefaultSetup /// Runner type to be used. /// [JsonPropertyName("runner_type")] - public CodeScanningDefaultSetupRunnerType? RunnerType { get; init; } + public CodeQualitySetupRunnerType? RunnerType { get; init; } /// /// Runner label to be used if the runner type is labeled. @@ -20552,13 +21142,13 @@ public record CodeScanningDefaultSetupUpdate /// The desired state of code scanning default setup. /// [JsonPropertyName("state")] - public CodeScanningDefaultSetupState? State { get; init; } + public CodeQualitySetupState? State { get; init; } /// /// Runner type to be used. /// [JsonPropertyName("runner_type")] - public CodeScanningDefaultSetupUpdateRunnerType? RunnerType { get; init; } + public CodeQualitySetupUpdateRunnerType? RunnerType { get; init; } /// /// Runner label to be used if the runner type is labeled. @@ -22173,6 +22763,19 @@ public record GitTree } +/// +/// Repository hash algorithm +/// +public record RepositoryHashAlgorithm +{ + /// + /// The Git hash algorithm used by this repository. + /// + [JsonPropertyName("hash_algorithm")] + public required HashAlgorithm HashAlgorithm { get; init; } + +} + public record HookResponse { [JsonPropertyName("code")] @@ -24787,7 +25390,12 @@ public record SecretScanningScan public string? Type { get; init; } /// - /// The state of the scan. Either "completed", "running", or "pending" + /// The state of the scan. Either "completed", "running", "pending", "failed", or "unknown". + /// + /// "failed": this scan type has hit its retry limit and has been marked permanently failed. + /// This usually resolves on its own at the next scheduled scan attempt. If "failed" persists, contact Support. + /// + /// "unknown": the scan is in an unrecognized or currently unhandled state. /// [JsonPropertyName("status")] public string? Status { get; init; } @@ -25419,7 +26027,7 @@ public record IssueSearchResultItem public Uri? TimelineUrl { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -26579,6 +27187,34 @@ public record KeySimple } +public record BillingAiCreditUsageReportUser +{ + [JsonPropertyName("timePeriod")] + public required object TimePeriod { get; init; } + + /// + /// The unique identifier of the user. + /// + [JsonPropertyName("user")] + public required string User { get; init; } + + /// + /// The product for the usage report. + /// + [JsonPropertyName("product")] + public string? Product { get; init; } + + /// + /// The model for the usage report. + /// + [JsonPropertyName("model")] + public string? Model { get; init; } + + [JsonPropertyName("usageItems")] + public required IReadOnlyList UsageItems { get; init; } + +} + public record BillingPremiumRequestUsageReportUser { [JsonPropertyName("timePeriod")] @@ -28044,7 +28680,7 @@ public record WebhooksIssue public required string Title { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -28244,7 +28880,7 @@ public record WebhooksIssue2 public required string Title { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -34592,6 +35228,134 @@ public record WebhookIssuesEdited } +public record WebhookIssuesFieldAdded +{ + [JsonPropertyName("action")] + public required WebhookIssuesFieldAddedAction Action { get; init; } + + /// + /// An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured + /// on an enterprise account or an organization that's part of an enterprise account. For more information, + /// see "[About enterprise accounts](https://docs.github.com/admin/overview/about-enterprise-accounts)." + /// + [JsonPropertyName("enterprise")] + public EnterpriseWebhooks? Enterprise { get; init; } + + /// + /// The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured + /// for and sent to a GitHub App. For more information, + /// see "[Using webhooks with GitHub Apps](https://docs.github.com/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)." + /// + [JsonPropertyName("installation")] + public SimpleInstallation? Installation { get; init; } + + /// + /// The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. + /// + [JsonPropertyName("issue")] + public required WebhooksIssue Issue { get; init; } + + /// + /// The issue field whose value was set or updated on the issue. + /// + [JsonPropertyName("issue_field")] + public required object IssueField { get; init; } + + /// + /// The value that was set or updated for the issue field. When updating an existing value, the previous value is available in `changes`. + /// + [JsonPropertyName("issue_field_value")] + public object? IssueFieldValue { get; init; } + + /// + /// The previous field value, present when an existing value was updated. + /// + [JsonPropertyName("changes")] + public object? Changes { get; init; } + + /// + /// A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an + /// organization, or when the event occurs from activity in a repository owned by an organization. + /// + [JsonPropertyName("organization")] + public OrganizationSimpleWebhooks? Organization { get; init; } + + /// + /// The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property + /// when the event occurs from activity in a repository. + /// + [JsonPropertyName("repository")] + public required RepositoryWebhooks Repository { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("sender")] + public required SimpleUser Sender { get; init; } + +} + +public record WebhookIssuesFieldRemoved +{ + [JsonPropertyName("action")] + public required WebhookIssuesFieldRemovedAction Action { get; init; } + + /// + /// An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured + /// on an enterprise account or an organization that's part of an enterprise account. For more information, + /// see "[About enterprise accounts](https://docs.github.com/admin/overview/about-enterprise-accounts)." + /// + [JsonPropertyName("enterprise")] + public EnterpriseWebhooks? Enterprise { get; init; } + + /// + /// The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured + /// for and sent to a GitHub App. For more information, + /// see "[Using webhooks with GitHub Apps](https://docs.github.com/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)." + /// + [JsonPropertyName("installation")] + public SimpleInstallation? Installation { get; init; } + + /// + /// The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. + /// + [JsonPropertyName("issue")] + public required WebhooksIssue Issue { get; init; } + + /// + /// The issue field whose value was cleared from the issue. + /// + [JsonPropertyName("issue_field")] + public required object IssueField { get; init; } + + /// + /// The value that was cleared from the issue field. + /// + [JsonPropertyName("issue_field_value")] + public object? IssueFieldValue { get; init; } + + /// + /// A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an + /// organization, or when the event occurs from activity in a repository owned by an organization. + /// + [JsonPropertyName("organization")] + public OrganizationSimpleWebhooks? Organization { get; init; } + + /// + /// The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property + /// when the event occurs from activity in a repository. + /// + [JsonPropertyName("repository")] + public required RepositoryWebhooks Repository { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("sender")] + public required SimpleUser Sender { get; init; } + +} + public record WebhookIssuesLabeled { [JsonPropertyName("action")] @@ -34978,7 +35742,7 @@ public record WebhookIssuesTyped public required WebhooksIssue Issue { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public required IssueType? Type { get; init; } @@ -35238,7 +36002,7 @@ public record WebhookIssuesUntyped public required WebhooksIssue Issue { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public required IssueType? Type { get; init; } @@ -42357,19 +43121,19 @@ public record WebhookSubIssuesParentIssueAdded /// The ID of the parent issue. /// [JsonPropertyName("parent_issue_id")] - public required double ParentIssueId { get; init; } + public double? ParentIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("parent_issue")] - public required Issue ParentIssue { get; init; } + public Issue? ParentIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("parent_issue_repo")] - public required Repository ParentIssueRepo { get; init; } + public Repository? ParentIssueRepo { get; init; } /// /// The ID of the sub-issue. @@ -42403,13 +43167,13 @@ public record WebhookSubIssuesParentIssueAdded /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -42422,19 +43186,19 @@ public record WebhookSubIssuesParentIssueRemoved /// The ID of the parent issue. /// [JsonPropertyName("parent_issue_id")] - public required double ParentIssueId { get; init; } + public double? ParentIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("parent_issue")] - public required Issue ParentIssue { get; init; } + public Issue? ParentIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("parent_issue_repo")] - public required Repository ParentIssueRepo { get; init; } + public Repository? ParentIssueRepo { get; init; } /// /// The ID of the sub-issue. @@ -42468,13 +43232,13 @@ public record WebhookSubIssuesParentIssueRemoved /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -42487,19 +43251,19 @@ public record WebhookSubIssuesSubIssueAdded /// The ID of the sub-issue. /// [JsonPropertyName("sub_issue_id")] - public required double SubIssueId { get; init; } + public double? SubIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("sub_issue")] - public required Issue SubIssue { get; init; } + public Issue? SubIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("sub_issue_repo")] - public required Repository SubIssueRepo { get; init; } + public Repository? SubIssueRepo { get; init; } /// /// The ID of the parent issue. @@ -42533,13 +43297,13 @@ public record WebhookSubIssuesSubIssueAdded /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -42552,19 +43316,19 @@ public record WebhookSubIssuesSubIssueRemoved /// The ID of the sub-issue. /// [JsonPropertyName("sub_issue_id")] - public required double SubIssueId { get; init; } + public double? SubIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("sub_issue")] - public required Issue SubIssue { get; init; } + public Issue? SubIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("sub_issue_repo")] - public required Repository SubIssueRepo { get; init; } + public Repository? SubIssueRepo { get; init; } /// /// The ID of the parent issue. @@ -42598,13 +43362,13 @@ public record WebhookSubIssuesSubIssueRemoved /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } diff --git a/examples/OpenApiCodeGenerator.Examples/output/github-api.cs b/examples/OpenApiCodeGenerator.Examples/output/github-api.cs index b01f131..c39d1c6 100644 --- a/examples/OpenApiCodeGenerator.Examples/output/github-api.cs +++ b/examples/OpenApiCodeGenerator.Examples/output/github-api.cs @@ -136,6 +136,22 @@ public enum RepositoryRuleRequiredSignaturesType RequiredSignatures } +/// +/// The type of the actor +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum RepositoryRuleParamsActorType +{ + [JsonStringEnumMemberName("User")] + User, + [JsonStringEnumMemberName("Team")] + Team, + [JsonStringEnumMemberName("IntegrationInstallation")] + IntegrationInstallation, + [JsonStringEnumMemberName("RepositoryRole")] + RepositoryRole +} + /// /// The type of the reviewer /// @@ -203,52 +219,52 @@ public enum RepositoryRuleTagNamePatternType } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleFilePathRestrictionType +public enum RepositoryRuleWorkflowsType { - [JsonStringEnumMemberName("file_path_restriction")] - FilePathRestriction + [JsonStringEnumMemberName("workflows")] + Workflows } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleMaxFilePathLengthType +public enum RepositoryRuleCodeScanningType { - [JsonStringEnumMemberName("max_file_path_length")] - MaxFilePathLength + [JsonStringEnumMemberName("code_scanning")] + CodeScanning } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleFileExtensionRestrictionType +public enum RepositoryRuleCopilotCodeReviewType { - [JsonStringEnumMemberName("file_extension_restriction")] - FileExtensionRestriction + [JsonStringEnumMemberName("copilot_code_review")] + CopilotCodeReview } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleMaxFileSizeType +public enum RepositoryRuleFilePathRestrictionType { - [JsonStringEnumMemberName("max_file_size")] - MaxFileSize + [JsonStringEnumMemberName("file_path_restriction")] + FilePathRestriction } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleWorkflowsType +public enum RepositoryRuleMaxFilePathLengthType { - [JsonStringEnumMemberName("workflows")] - Workflows + [JsonStringEnumMemberName("max_file_path_length")] + MaxFilePathLength } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleCodeScanningType +public enum RepositoryRuleFileExtensionRestrictionType { - [JsonStringEnumMemberName("code_scanning")] - CodeScanning + [JsonStringEnumMemberName("file_extension_restriction")] + FileExtensionRestriction } [JsonConverter(typeof(JsonStringEnumConverter))] -public enum RepositoryRuleCopilotCodeReviewType +public enum RepositoryRuleMaxFileSizeType { - [JsonStringEnumMemberName("copilot_code_review")] - CopilotCodeReview + [JsonStringEnumMemberName("max_file_size")] + MaxFileSize } /// @@ -510,6 +526,18 @@ public enum Checks Write } +/// +/// The level of permission to grant the access token to view and manage code quality data. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CodeQuality +{ + [JsonStringEnumMemberName("read")] + Read, + [JsonStringEnumMemberName("write")] + Write +} + /// /// The level of permission to grant the access token to create, edit, delete, and list Codespaces. /// @@ -854,12 +882,14 @@ public enum OrganizationCustomProperties [JsonConverter(typeof(JsonStringEnumConverter))] public enum OrganizationCopilotSeatManagement { + [JsonStringEnumMemberName("read")] + Read, [JsonStringEnumMemberName("write")] Write } /// -/// The level of permission to grant the access token to view and manage Copilot coding agent settings for an organization. +/// The level of permission to grant the access token to view and manage Copilot cloud agent settings for an organization. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum OrganizationCopilotAgentSettings @@ -1510,7 +1540,7 @@ public enum CodeScanningDefaultSetupOptionsRunnerType /// Runner type to be used. /// [JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningDefaultSetupRunnerType +public enum CodeQualitySetupRunnerType { [JsonStringEnumMemberName("standard")] Standard, @@ -2024,27 +2054,27 @@ public enum WorkflowState } /// -/// State of a code scanning alert instance. +/// Code quality setup has been configured or not. /// [JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningAlertInstanceListState +public enum CodeQualitySetupState { - [JsonStringEnumMemberName("open")] - Open, - [JsonStringEnumMemberName("fixed")] - Fixed + [JsonStringEnumMemberName("configured")] + Configured, + [JsonStringEnumMemberName("not-configured")] + NotConfigured } /// -/// Code scanning default setup has been configured or not. +/// State of a code scanning alert instance. /// [JsonConverter(typeof(JsonStringEnumConverter))] -public enum CodeScanningDefaultSetupState +public enum CodeScanningAlertInstanceListState { - [JsonStringEnumMemberName("configured")] - Configured, - [JsonStringEnumMemberName("not-configured")] - NotConfigured + [JsonStringEnumMemberName("open")] + Open, + [JsonStringEnumMemberName("fixed")] + Fixed } /// @@ -2169,6 +2199,30 @@ public enum CodeScanningOrganizationAlertItemsDismissedReason UsedInTests } +/// +/// The default repository access level for Dependabot updates. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum DefaultLevel +{ + [JsonStringEnumMemberName("public")] + Public, + [JsonStringEnumMemberName("internal")] + Internal +} + +/// +/// Whether team members will receive notifications when the team is mentioned. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum NotificationSetting +{ + [JsonStringEnumMemberName("notifications_enabled")] + NotificationsEnabled, + [JsonStringEnumMemberName("notifications_disabled")] + NotificationsDisabled +} + /// /// How the author is associated with the repository. /// @@ -2283,6 +2337,8 @@ public enum IssueFieldValueDataType Text, [JsonStringEnumMemberName("single_select")] SingleSelect, + [JsonStringEnumMemberName("multi_select")] + MultiSelect, [JsonStringEnumMemberName("number")] Number, [JsonStringEnumMemberName("date")] @@ -2301,6 +2357,8 @@ public enum IssueFieldDataType Date, [JsonStringEnumMemberName("single_select")] SingleSelect, + [JsonStringEnumMemberName("multi_select")] + MultiSelect, [JsonStringEnumMemberName("number")] Number } @@ -2355,7 +2413,7 @@ public enum PriceModel } /// -/// The type of scope for the budget +/// The scope of the budget /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum BudgetScope @@ -2367,7 +2425,11 @@ public enum BudgetScope [JsonStringEnumMemberName("repository")] Repository, [JsonStringEnumMemberName("cost_center")] - CostCenter + CostCenter, + [JsonStringEnumMemberName("multi_user_customer")] + MultiUserCustomer, + [JsonStringEnumMemberName("user")] + User } /// @@ -2577,6 +2639,66 @@ public enum Location WestUs2 } +/// +/// The base role that determines default permissions. +/// - `no_access`: No default access +/// - `reader`: Default read permissions +/// - `writer`: Default write permissions (organization spaces only) +/// - `admin`: Default admin permissions (organization spaces only) +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CopilotSpaceBaseRole +{ + [JsonStringEnumMemberName("reader")] + Reader, + [JsonStringEnumMemberName("writer")] + Writer, + [JsonStringEnumMemberName("admin")] + Admin, + [JsonStringEnumMemberName("no_access")] + NoAccess +} + +/// +/// The system role from which this role inherits permissions. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum OrganizationRoleBaseRole +{ + [JsonStringEnumMemberName("read")] + Read, + [JsonStringEnumMemberName("triage")] + Triage, + [JsonStringEnumMemberName("write")] + Write, + [JsonStringEnumMemberName("maintain")] + Maintain, + [JsonStringEnumMemberName("admin")] + Admin +} + +/// +/// The type of the resource. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum ResourceType +{ + [JsonStringEnumMemberName("repository")] + Repository, + [JsonStringEnumMemberName("github_file")] + GithubFile, + [JsonStringEnumMemberName("free_text")] + FreeText, + [JsonStringEnumMemberName("github_issue")] + GithubIssue, + [JsonStringEnumMemberName("github_pull_request")] + GithubPullRequest, + [JsonStringEnumMemberName("media_content")] + MediaContent, + [JsonStringEnumMemberName("uploaded_text_file")] + UploadedTextFile +} + /// /// The organization policy for allowing or blocking suggestions matching public code (duplication detection filter). /// @@ -2675,18 +2797,6 @@ public enum CopilotSeatDetailsPlanType Unknown } -/// -/// The default repository access level for Dependabot updates. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum DefaultLevel -{ - [JsonStringEnumMemberName("public")] - Public, - [JsonStringEnumMemberName("internal")] - Internal -} - [JsonConverter(typeof(JsonStringEnumConverter))] public enum PackageType { @@ -2762,24 +2872,6 @@ public enum TeamMembershipRole Maintainer } -/// -/// The system role from which this role inherits permissions. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum BaseRole -{ - [JsonStringEnumMemberName("read")] - Read, - [JsonStringEnumMemberName("triage")] - Triage, - [JsonStringEnumMemberName("write")] - Write, - [JsonStringEnumMemberName("maintain")] - Maintain, - [JsonStringEnumMemberName("admin")] - Admin -} - /// /// Determines if the team has a direct, indirect, or mixed relationship to a role /// @@ -2849,7 +2941,9 @@ public enum AuthType [JsonStringEnumMemberName("oidc_jfrog")] OidcJfrog, [JsonStringEnumMemberName("oidc_cloudsmith")] - OidcCloudsmith + OidcCloudsmith, + [JsonStringEnumMemberName("oidc_gcp")] + OidcGcp } /// @@ -2965,7 +3059,9 @@ public enum ActorType [JsonStringEnumMemberName("Team")] Team, [JsonStringEnumMemberName("DeployKey")] - DeployKey + DeployKey, + [JsonStringEnumMemberName("User")] + User } /// @@ -3218,18 +3314,6 @@ public enum WebhooksTeamPrivacy Secret } -/// -/// The notification setting the team has set -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum NotificationSetting -{ - [JsonStringEnumMemberName("notifications_enabled")] - NotificationsEnabled, - [JsonStringEnumMemberName("notifications_disabled")] - NotificationsDisabled -} - /// /// The outcome of the job. /// @@ -3364,6 +3448,16 @@ public enum ActivityType MergeQueueMerge } +/// +/// The frequency of the periodic analysis. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum Schedule +{ + [JsonStringEnumMemberName("weekly")] + Weekly +} + /// /// The language targeted by the CodeQL query /// @@ -3450,16 +3544,6 @@ public enum ThreatModel RemoteAndLocal } -/// -/// The frequency of the periodic analysis. -/// -[JsonConverter(typeof(JsonStringEnumConverter))] -public enum Schedule -{ - [JsonStringEnumMemberName("weekly")] - Weekly -} - /// /// `pending` files have not yet been processed, while `complete` means results from the SARIF have been stored. `failed` files have either not been processed at all, or could only be partially processed. /// @@ -3562,6 +3646,18 @@ public enum WebhookMembershipRemovedScope Organization } +/// +/// The Git hash algorithm used by this repository. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum HashAlgorithm +{ + [JsonStringEnumMemberName("sha1")] + Sha1, + [JsonStringEnumMemberName("sha256")] + Sha256 +} + /// /// The side of the first line of the range for a multi-line comment. /// @@ -4185,6 +4281,20 @@ public enum WebhookIssuesDemilestonedAction Demilestoned } +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum WebhookIssuesFieldAddedAction +{ + [JsonStringEnumMemberName("field_added")] + FieldAdded +} + +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum WebhookIssuesFieldRemovedAction +{ + [JsonStringEnumMemberName("field_removed")] + FieldRemoved +} + [JsonConverter(typeof(JsonStringEnumConverter))] public enum WebhookIssuesMilestonedAction { @@ -5558,6 +5668,12 @@ public record AppPermissions [JsonPropertyName("checks")] public Checks? Checks { get; init; } + /// + /// The level of permission to grant the access token to view and manage code quality data. + /// + [JsonPropertyName("code_quality")] + public CodeQuality? CodeQuality { get; init; } + /// /// The level of permission to grant the access token to create, edit, delete, and list Codespaces. /// @@ -5733,7 +5849,7 @@ public record AppPermissions public OrganizationCopilotSeatManagement? OrganizationCopilotSeatManagement { get; init; } /// - /// The level of permission to grant the access token to view and manage Copilot coding agent settings for an organization. + /// The level of permission to grant the access token to view and manage Copilot cloud agent settings for an organization. /// [JsonPropertyName("organization_copilot_agent_settings")] public OrganizationCopilotAgentSettings? OrganizationCopilotAgentSettings { get; init; } @@ -8135,6 +8251,305 @@ public record DependabotAlertWithRepository } +/// +/// A GitHub repository. +/// +public record NullableSimpleRepository +{ + /// + /// A unique identifier of the repository. + /// + [JsonPropertyName("id")] + public required long Id { get; init; } + + /// + /// The GraphQL identifier of the repository. + /// + [JsonPropertyName("node_id")] + public required string NodeId { get; init; } + + /// + /// The name of the repository. + /// + [JsonPropertyName("name")] + public required string Name { get; init; } + + /// + /// The full, globally unique, name of the repository. + /// + [JsonPropertyName("full_name")] + public required string FullName { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("owner")] + public required SimpleUser Owner { get; init; } + + /// + /// Whether the repository is private. + /// + [JsonPropertyName("private")] + public required bool Private { get; init; } + + /// + /// The URL to view the repository on GitHub.com. + /// + [JsonPropertyName("html_url")] + public required Uri HtmlUrl { get; init; } + + /// + /// The repository description. + /// + [JsonPropertyName("description")] + public required string? Description { get; init; } + + /// + /// Whether the repository is a fork. + /// + [JsonPropertyName("fork")] + public required bool Fork { get; init; } + + /// + /// The URL to get more information about the repository from the GitHub API. + /// + [JsonPropertyName("url")] + public required Uri Url { get; init; } + + /// + /// A template for the API URL to download the repository as an archive. + /// + [JsonPropertyName("archive_url")] + public required string ArchiveUrl { get; init; } + + /// + /// A template for the API URL to list the available assignees for issues in the repository. + /// + [JsonPropertyName("assignees_url")] + public required string AssigneesUrl { get; init; } + + /// + /// A template for the API URL to create or retrieve a raw Git blob in the repository. + /// + [JsonPropertyName("blobs_url")] + public required string BlobsUrl { get; init; } + + /// + /// A template for the API URL to get information about branches in the repository. + /// + [JsonPropertyName("branches_url")] + public required string BranchesUrl { get; init; } + + /// + /// A template for the API URL to get information about collaborators of the repository. + /// + [JsonPropertyName("collaborators_url")] + public required string CollaboratorsUrl { get; init; } + + /// + /// A template for the API URL to get information about comments on the repository. + /// + [JsonPropertyName("comments_url")] + public required string CommentsUrl { get; init; } + + /// + /// A template for the API URL to get information about commits on the repository. + /// + [JsonPropertyName("commits_url")] + public required string CommitsUrl { get; init; } + + /// + /// A template for the API URL to compare two commits or refs. + /// + [JsonPropertyName("compare_url")] + public required string CompareUrl { get; init; } + + /// + /// A template for the API URL to get the contents of the repository. + /// + [JsonPropertyName("contents_url")] + public required string ContentsUrl { get; init; } + + /// + /// A template for the API URL to list the contributors to the repository. + /// + [JsonPropertyName("contributors_url")] + public required Uri ContributorsUrl { get; init; } + + /// + /// The API URL to list the deployments of the repository. + /// + [JsonPropertyName("deployments_url")] + public required Uri DeploymentsUrl { get; init; } + + /// + /// The API URL to list the downloads on the repository. + /// + [JsonPropertyName("downloads_url")] + public required Uri DownloadsUrl { get; init; } + + /// + /// The API URL to list the events of the repository. + /// + [JsonPropertyName("events_url")] + public required Uri EventsUrl { get; init; } + + /// + /// The API URL to list the forks of the repository. + /// + [JsonPropertyName("forks_url")] + public required Uri ForksUrl { get; init; } + + /// + /// A template for the API URL to get information about Git commits of the repository. + /// + [JsonPropertyName("git_commits_url")] + public required string GitCommitsUrl { get; init; } + + /// + /// A template for the API URL to get information about Git refs of the repository. + /// + [JsonPropertyName("git_refs_url")] + public required string GitRefsUrl { get; init; } + + /// + /// A template for the API URL to get information about Git tags of the repository. + /// + [JsonPropertyName("git_tags_url")] + public required string GitTagsUrl { get; init; } + + /// + /// A template for the API URL to get information about issue comments on the repository. + /// + [JsonPropertyName("issue_comment_url")] + public required string IssueCommentUrl { get; init; } + + /// + /// A template for the API URL to get information about issue events on the repository. + /// + [JsonPropertyName("issue_events_url")] + public required string IssueEventsUrl { get; init; } + + /// + /// A template for the API URL to get information about issues on the repository. + /// + [JsonPropertyName("issues_url")] + public required string IssuesUrl { get; init; } + + /// + /// A template for the API URL to get information about deploy keys on the repository. + /// + [JsonPropertyName("keys_url")] + public required string KeysUrl { get; init; } + + /// + /// A template for the API URL to get information about labels of the repository. + /// + [JsonPropertyName("labels_url")] + public required string LabelsUrl { get; init; } + + /// + /// The API URL to get information about the languages of the repository. + /// + [JsonPropertyName("languages_url")] + public required Uri LanguagesUrl { get; init; } + + /// + /// The API URL to merge branches in the repository. + /// + [JsonPropertyName("merges_url")] + public required Uri MergesUrl { get; init; } + + /// + /// A template for the API URL to get information about milestones of the repository. + /// + [JsonPropertyName("milestones_url")] + public required string MilestonesUrl { get; init; } + + /// + /// A template for the API URL to get information about notifications on the repository. + /// + [JsonPropertyName("notifications_url")] + public required string NotificationsUrl { get; init; } + + /// + /// A template for the API URL to get information about pull requests on the repository. + /// + [JsonPropertyName("pulls_url")] + public required string PullsUrl { get; init; } + + /// + /// A template for the API URL to get information about releases on the repository. + /// + [JsonPropertyName("releases_url")] + public required string ReleasesUrl { get; init; } + + /// + /// The API URL to list the stargazers on the repository. + /// + [JsonPropertyName("stargazers_url")] + public required Uri StargazersUrl { get; init; } + + /// + /// A template for the API URL to get information about statuses of a commit. + /// + [JsonPropertyName("statuses_url")] + public required string StatusesUrl { get; init; } + + /// + /// The API URL to list the subscribers on the repository. + /// + [JsonPropertyName("subscribers_url")] + public required Uri SubscribersUrl { get; init; } + + /// + /// The API URL to subscribe to notifications for this repository. + /// + [JsonPropertyName("subscription_url")] + public required Uri SubscriptionUrl { get; init; } + + /// + /// The API URL to get information about tags on the repository. + /// + [JsonPropertyName("tags_url")] + public required Uri TagsUrl { get; init; } + + /// + /// The API URL to list the teams on the repository. + /// + [JsonPropertyName("teams_url")] + public required Uri TeamsUrl { get; init; } + + /// + /// A template for the API URL to create or retrieve a raw Git tree of the repository. + /// + [JsonPropertyName("trees_url")] + public required string TreesUrl { get; init; } + + /// + /// The API URL to list the hooks on the repository. + /// + [JsonPropertyName("hooks_url")] + public required Uri HooksUrl { get; init; } + +} + +/// +/// Information about repositories that Dependabot is able to access in an organization +/// +public record DependabotRepositoryAccessDetails +{ + /// + /// The default repository access level for Dependabot updates. + /// + [JsonPropertyName("default_level")] + public DefaultLevel? DefaultLevel { get; init; } + + [JsonPropertyName("accessible_repositories")] + public IReadOnlyList? AccessibleRepositories { get; init; } + +} + /// /// Group of enterprise owners and/or members /// @@ -8185,6 +8600,12 @@ public record EnterpriseTeam [JsonPropertyName("updated_at")] public required DateTimeOffset UpdatedAt { get; init; } + /// + /// Whether team members will receive notifications when the team is mentioned. + /// + [JsonPropertyName("notification_setting")] + public NotificationSetting? NotificationSetting { get; init; } + } /// @@ -8456,7 +8877,7 @@ public record NullableMilestone } /// -/// The type of issue. +/// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// public record IssueType { @@ -8785,6 +9206,12 @@ public record IssueFieldValue [JsonPropertyName("single_select_option")] public object? SingleSelectOption { get; init; } + /// + /// Details about the selected options + /// + [JsonPropertyName("multi_select_options")] + public IReadOnlyList? MultiSelectOptions { get; init; } + } /// @@ -8916,7 +9343,7 @@ public record Issue public Uri? TimelineUrl { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -10331,6 +10758,40 @@ public record ActionsCacheStorageLimitForOrganization } +public record BillingAiCreditUsageReportOrg +{ + [JsonPropertyName("timePeriod")] + public required object TimePeriod { get; init; } + + /// + /// The unique identifier of the organization. + /// + [JsonPropertyName("organization")] + public required string Organization { get; init; } + + /// + /// The name of the user for the usage report. + /// + [JsonPropertyName("user")] + public string? User { get; init; } + + /// + /// The product for the usage report. + /// + [JsonPropertyName("product")] + public string? Product { get; init; } + + /// + /// The model for the usage report. + /// + [JsonPropertyName("model")] + public string? Model { get; init; } + + [JsonPropertyName("usageItems")] + public required IReadOnlyList UsageItems { get; init; } + +} + public record Budget { /// @@ -10358,10 +10819,10 @@ public record Budget public required bool PreventFurtherUsage { get; init; } /// - /// The scope of the budget (enterprise, organization, repository, cost center) + /// The scope of the budget /// [JsonPropertyName("budget_scope")] - public required string BudgetScope { get; init; } + public required BudgetScope BudgetScope { get; init; } /// /// The name of the entity for the budget (enterprise does not require a name). @@ -10369,6 +10830,12 @@ public record Budget [JsonPropertyName("budget_entity_name")] public string? BudgetEntityName { get; init; } + /// + /// The user login when the budget is scoped to a single user (`user` scope). + /// + [JsonPropertyName("user")] + public string? User { get; init; } + /// /// A single product or sku to apply the budget to. /// @@ -10388,6 +10855,18 @@ public record GetAllBudgets [JsonPropertyName("budgets")] public required IReadOnlyList Budgets { get; init; } + /// + /// User login included when the response is scoped with the `user` query parameter. + /// + [JsonPropertyName("user")] + public string? User { get; init; } + + /// + /// Effective user-level budget details returned when the response is scoped with the `user` query parameter. + /// + [JsonPropertyName("effective_budget")] + public object? EffectiveBudget { get; init; } + /// /// Indicates if there are more pages of results available (maps to hasNextPage from billing platform) /// @@ -10402,6 +10881,19 @@ public record GetAllBudgets } +public record CreateBudget +{ + /// + /// A message indicating the result of the create operation + /// + [JsonPropertyName("message")] + public required string Message { get; init; } + + [JsonPropertyName("budget")] + public required object Budget { get; init; } + +} + public record GetBudget { /// @@ -10422,6 +10914,12 @@ public record GetBudget [JsonPropertyName("budget_entity_name")] public required string BudgetEntityName { get; init; } + /// + /// The user login when the budget is scoped to a single user (`user` scope). + /// + [JsonPropertyName("user")] + public string? User { get; init; } + /// /// The budget amount in whole dollars. For license-based products, this represents the number of licenses. /// @@ -10451,6 +10949,19 @@ public record GetBudget } +public record UpdateBudget +{ + /// + /// A message indicating the result of the update operation + /// + [JsonPropertyName("message")] + public required string Message { get; init; } + + [JsonPropertyName("budget")] + public required object Budget { get; init; } + +} + public record DeleteBudget { /// @@ -11172,6 +11683,12 @@ public record OidcCustomSub [JsonPropertyName("include_claim_keys")] public required IReadOnlyList IncludeClaimKeys { get; init; } + /// + /// Whether to opt in to the immutable OIDC subject claim format for the organization. When `true`, new OIDC tokens will use a stable, repository-ID-based `sub` claim instead of the name-based format. + /// + [JsonPropertyName("use_immutable_subject")] + public bool? UseImmutableSubject { get; init; } + } /// @@ -11586,6 +12103,12 @@ public record Runner [JsonPropertyName("ephemeral")] public bool? Ephemeral { get; init; } + /// + /// The version of the GitHub Actions Runner software. This is only set if the runner has connected to the service at least once. + /// + [JsonPropertyName("version")] + public string? Version { get; init; } + } /// @@ -12813,6 +13336,145 @@ public record CodespacesPublicKey } +/// +/// A GitHub Copilot Space represents an interactive AI workspace where users can ask questions and get assistance. +/// +public record CopilotSpace +{ + /// + /// The unique identifier of the space. + /// + [JsonPropertyName("id")] + public required long Id { get; init; } + + /// + /// The number that identifies the space within its owner. + /// + [JsonPropertyName("number")] + public required int Number { get; init; } + + /// + /// The display name of the space. + /// + [JsonPropertyName("name")] + public required string Name { get; init; } + + /// + /// A description of the space. + /// + [JsonPropertyName("description")] + public string? Description { get; init; } + + /// + /// General instructions for the Copilot Space. + /// + [JsonPropertyName("general_instructions")] + public string? GeneralInstructions { get; init; } + + /// + /// The base role that determines default permissions. + /// - `no_access`: No default access + /// - `reader`: Default read permissions + /// - `writer`: Default write permissions (organization spaces only) + /// - `admin`: Default admin permissions (organization spaces only) + /// + [JsonPropertyName("base_role")] + public required CopilotSpaceBaseRole BaseRole { get; init; } + + /// + /// The user or organization that owns this space. + /// + [JsonPropertyName("owner")] + public required object Owner { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("creator")] + public required SimpleUser Creator { get; init; } + + /// + /// The date and time the space was created. + /// + [JsonPropertyName("created_at")] + public required DateTimeOffset CreatedAt { get; init; } + + /// + /// The date and time the space was last updated. + /// + [JsonPropertyName("updated_at")] + public required DateTimeOffset UpdatedAt { get; init; } + + /// + /// The HTML URL of the space. + /// + [JsonPropertyName("html_url")] + public required Uri HtmlUrl { get; init; } + + /// + /// The API URL of the space. + /// + [JsonPropertyName("api_url")] + public required Uri ApiUrl { get; init; } + + /// + /// Resources attached to the space. + /// + [JsonPropertyName("resources_attributes")] + public IReadOnlyList? ResourcesAttributes { get; init; } + +} + +/// +/// A collaborator (user or team) of a Copilot Space +/// +public record CopilotSpaceCollaborator +{ +} + +/// +/// A resource attached to a Copilot Space. +/// +public record CopilotSpaceResource +{ + /// + /// The unique identifier of the resource. + /// + [JsonPropertyName("id")] + public required int Id { get; init; } + + /// + /// The type of the resource. + /// + [JsonPropertyName("resource_type")] + public required ResourceType ResourceType { get; init; } + + /// + /// The ID of the associated chat attachment, if any. + /// + [JsonPropertyName("copilot_chat_attachment_id")] + public int? CopilotChatAttachmentId { get; init; } + + /// + /// Resource-specific metadata. The keys and values depend on the resource type. + /// + [JsonPropertyName("metadata")] + public required object Metadata { get; init; } + + /// + /// The date and time the resource was created. + /// + [JsonPropertyName("created_at")] + public required DateTimeOffset CreatedAt { get; init; } + + /// + /// The date and time the resource was last updated. + /// + [JsonPropertyName("updated_at")] + public required DateTimeOffset UpdatedAt { get; init; } + +} + /// /// The breakdown of Copilot Business seats for the organization. /// @@ -13145,305 +13807,6 @@ public record CopilotUsageMetricsDay } -/// -/// A GitHub repository. -/// -public record NullableSimpleRepository -{ - /// - /// A unique identifier of the repository. - /// - [JsonPropertyName("id")] - public required long Id { get; init; } - - /// - /// The GraphQL identifier of the repository. - /// - [JsonPropertyName("node_id")] - public required string NodeId { get; init; } - - /// - /// The name of the repository. - /// - [JsonPropertyName("name")] - public required string Name { get; init; } - - /// - /// The full, globally unique, name of the repository. - /// - [JsonPropertyName("full_name")] - public required string FullName { get; init; } - - /// - /// A GitHub user. - /// - [JsonPropertyName("owner")] - public required SimpleUser Owner { get; init; } - - /// - /// Whether the repository is private. - /// - [JsonPropertyName("private")] - public required bool Private { get; init; } - - /// - /// The URL to view the repository on GitHub.com. - /// - [JsonPropertyName("html_url")] - public required Uri HtmlUrl { get; init; } - - /// - /// The repository description. - /// - [JsonPropertyName("description")] - public required string? Description { get; init; } - - /// - /// Whether the repository is a fork. - /// - [JsonPropertyName("fork")] - public required bool Fork { get; init; } - - /// - /// The URL to get more information about the repository from the GitHub API. - /// - [JsonPropertyName("url")] - public required Uri Url { get; init; } - - /// - /// A template for the API URL to download the repository as an archive. - /// - [JsonPropertyName("archive_url")] - public required string ArchiveUrl { get; init; } - - /// - /// A template for the API URL to list the available assignees for issues in the repository. - /// - [JsonPropertyName("assignees_url")] - public required string AssigneesUrl { get; init; } - - /// - /// A template for the API URL to create or retrieve a raw Git blob in the repository. - /// - [JsonPropertyName("blobs_url")] - public required string BlobsUrl { get; init; } - - /// - /// A template for the API URL to get information about branches in the repository. - /// - [JsonPropertyName("branches_url")] - public required string BranchesUrl { get; init; } - - /// - /// A template for the API URL to get information about collaborators of the repository. - /// - [JsonPropertyName("collaborators_url")] - public required string CollaboratorsUrl { get; init; } - - /// - /// A template for the API URL to get information about comments on the repository. - /// - [JsonPropertyName("comments_url")] - public required string CommentsUrl { get; init; } - - /// - /// A template for the API URL to get information about commits on the repository. - /// - [JsonPropertyName("commits_url")] - public required string CommitsUrl { get; init; } - - /// - /// A template for the API URL to compare two commits or refs. - /// - [JsonPropertyName("compare_url")] - public required string CompareUrl { get; init; } - - /// - /// A template for the API URL to get the contents of the repository. - /// - [JsonPropertyName("contents_url")] - public required string ContentsUrl { get; init; } - - /// - /// A template for the API URL to list the contributors to the repository. - /// - [JsonPropertyName("contributors_url")] - public required Uri ContributorsUrl { get; init; } - - /// - /// The API URL to list the deployments of the repository. - /// - [JsonPropertyName("deployments_url")] - public required Uri DeploymentsUrl { get; init; } - - /// - /// The API URL to list the downloads on the repository. - /// - [JsonPropertyName("downloads_url")] - public required Uri DownloadsUrl { get; init; } - - /// - /// The API URL to list the events of the repository. - /// - [JsonPropertyName("events_url")] - public required Uri EventsUrl { get; init; } - - /// - /// The API URL to list the forks of the repository. - /// - [JsonPropertyName("forks_url")] - public required Uri ForksUrl { get; init; } - - /// - /// A template for the API URL to get information about Git commits of the repository. - /// - [JsonPropertyName("git_commits_url")] - public required string GitCommitsUrl { get; init; } - - /// - /// A template for the API URL to get information about Git refs of the repository. - /// - [JsonPropertyName("git_refs_url")] - public required string GitRefsUrl { get; init; } - - /// - /// A template for the API URL to get information about Git tags of the repository. - /// - [JsonPropertyName("git_tags_url")] - public required string GitTagsUrl { get; init; } - - /// - /// A template for the API URL to get information about issue comments on the repository. - /// - [JsonPropertyName("issue_comment_url")] - public required string IssueCommentUrl { get; init; } - - /// - /// A template for the API URL to get information about issue events on the repository. - /// - [JsonPropertyName("issue_events_url")] - public required string IssueEventsUrl { get; init; } - - /// - /// A template for the API URL to get information about issues on the repository. - /// - [JsonPropertyName("issues_url")] - public required string IssuesUrl { get; init; } - - /// - /// A template for the API URL to get information about deploy keys on the repository. - /// - [JsonPropertyName("keys_url")] - public required string KeysUrl { get; init; } - - /// - /// A template for the API URL to get information about labels of the repository. - /// - [JsonPropertyName("labels_url")] - public required string LabelsUrl { get; init; } - - /// - /// The API URL to get information about the languages of the repository. - /// - [JsonPropertyName("languages_url")] - public required Uri LanguagesUrl { get; init; } - - /// - /// The API URL to merge branches in the repository. - /// - [JsonPropertyName("merges_url")] - public required Uri MergesUrl { get; init; } - - /// - /// A template for the API URL to get information about milestones of the repository. - /// - [JsonPropertyName("milestones_url")] - public required string MilestonesUrl { get; init; } - - /// - /// A template for the API URL to get information about notifications on the repository. - /// - [JsonPropertyName("notifications_url")] - public required string NotificationsUrl { get; init; } - - /// - /// A template for the API URL to get information about pull requests on the repository. - /// - [JsonPropertyName("pulls_url")] - public required string PullsUrl { get; init; } - - /// - /// A template for the API URL to get information about releases on the repository. - /// - [JsonPropertyName("releases_url")] - public required string ReleasesUrl { get; init; } - - /// - /// The API URL to list the stargazers on the repository. - /// - [JsonPropertyName("stargazers_url")] - public required Uri StargazersUrl { get; init; } - - /// - /// A template for the API URL to get information about statuses of a commit. - /// - [JsonPropertyName("statuses_url")] - public required string StatusesUrl { get; init; } - - /// - /// The API URL to list the subscribers on the repository. - /// - [JsonPropertyName("subscribers_url")] - public required Uri SubscribersUrl { get; init; } - - /// - /// The API URL to subscribe to notifications for this repository. - /// - [JsonPropertyName("subscription_url")] - public required Uri SubscriptionUrl { get; init; } - - /// - /// The API URL to get information about tags on the repository. - /// - [JsonPropertyName("tags_url")] - public required Uri TagsUrl { get; init; } - - /// - /// The API URL to list the teams on the repository. - /// - [JsonPropertyName("teams_url")] - public required Uri TeamsUrl { get; init; } - - /// - /// A template for the API URL to create or retrieve a raw Git tree of the repository. - /// - [JsonPropertyName("trees_url")] - public required string TreesUrl { get; init; } - - /// - /// The API URL to list the hooks on the repository. - /// - [JsonPropertyName("hooks_url")] - public required Uri HooksUrl { get; init; } - -} - -/// -/// Information about repositories that Dependabot is able to access in an organization -/// -public record DependabotRepositoryAccessDetails -{ - /// - /// The default repository access level for Dependabot updates. - /// - [JsonPropertyName("default_level")] - public DefaultLevel? DefaultLevel { get; init; } - - [JsonPropertyName("accessible_repositories")] - public IReadOnlyList? AccessibleRepositories { get; init; } - -} - /// /// Secrets for GitHub Dependabot for an organization. /// @@ -14075,7 +14438,7 @@ public record IssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Available options for single select fields. + /// Available options for single select and multi select fields. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -14121,7 +14484,7 @@ public record OrganizationCreateIssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Options for single select fields. Required when data_type is 'single_select'. + /// Options for select fields. Required when data_type is 'single_select' or 'multi_select'. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -14149,7 +14512,7 @@ public record OrganizationUpdateIssueField public IssueFieldVisibility? Visibility { get; init; } /// - /// Options for single select fields. Only applicable when updating single_select fields. When provided, this array **replaces** the entire existing set of options rather than adding to or updating individual options. To retain or update an existing option, include it in the array with its `id`. Options sent without an `id` are treated as new options and may cause existing options to be deleted and recreated. + /// Options for select fields. Only applicable when updating single_select or multi_select fields. When provided, this array **replaces** the entire existing set of options rather than adding to or updating individual options. To retain or update an existing option, include it in the array with its `id`. Options sent without an `id` are treated as new options and may cause existing options to be deleted and recreated. /// [JsonPropertyName("options")] public IReadOnlyList? Options { get; init; } @@ -14362,7 +14725,7 @@ public record OrganizationRole /// The system role from which this role inherits permissions. /// [JsonPropertyName("base_role")] - public BaseRole? BaseRole { get; init; } + public OrganizationRoleBaseRole? BaseRole { get; init; } /// /// Source answers the question, "where did this role come from?" @@ -14968,144 +15331,168 @@ public record OrgPrivateRegistryConfiguration [JsonPropertyName("api_host")] public string? ApiHost { get; init; } - [JsonPropertyName("created_at")] - public required DateTimeOffset CreatedAt { get; init; } - - [JsonPropertyName("updated_at")] - public required DateTimeOffset UpdatedAt { get; init; } - -} - -/// -/// Private registry configuration for an organization -/// -public record OrgPrivateRegistryConfigurationWithSelectedRepositories -{ - /// - /// The name of the private registry configuration. - /// - [JsonPropertyName("name")] - public required string Name { get; init; } - - /// - /// The registry type. - /// - [JsonPropertyName("registry_type")] - public required RegistryType RegistryType { get; init; } - - /// - /// The authentication type for the private registry. - /// - [JsonPropertyName("auth_type")] - public AuthType? AuthType { get; init; } - - /// - /// The URL of the private registry. - /// - [JsonPropertyName("url")] - public Uri? Url { get; init; } - - /// - /// The username to use when authenticating with the private registry. - /// - [JsonPropertyName("username")] - public string? Username { get; init; } - - /// - /// Whether this private registry replaces the base registry (e.g., npmjs.org for npm, rubygems.org for rubygems). When `true`, Dependabot will only use this registry and will not fall back to the public registry. When `false` (default), Dependabot will use this registry for scoped packages but may fall back to the public registry for other packages. - /// - [JsonPropertyName("replaces_base")] - public bool ReplacesBase { get; init; } = false; - - /// - /// Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry. - /// - [JsonPropertyName("visibility")] - public required OrganizationActionsSecretVisibility Visibility { get; init; } - - /// - /// An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`. - /// - [JsonPropertyName("selected_repository_ids")] - public IReadOnlyList? SelectedRepositoryIds { get; init; } - - /// - /// The tenant ID of the Azure AD application. - /// - [JsonPropertyName("tenant_id")] - public string? TenantId { get; init; } - - /// - /// The client ID of the Azure AD application. - /// - [JsonPropertyName("client_id")] - public string? ClientId { get; init; } - - /// - /// The AWS region. - /// - [JsonPropertyName("aws_region")] - public string? AwsRegion { get; init; } - - /// - /// The AWS account ID. - /// - [JsonPropertyName("account_id")] - public string? AccountId { get; init; } - - /// - /// The AWS IAM role name. - /// - [JsonPropertyName("role_name")] - public string? RoleName { get; init; } - - /// - /// The CodeArtifact domain. - /// - [JsonPropertyName("domain")] - public string? Domain { get; init; } - - /// - /// The CodeArtifact domain owner. - /// - [JsonPropertyName("domain_owner")] - public string? DomainOwner { get; init; } - - /// - /// The JFrog OIDC provider name. - /// - [JsonPropertyName("jfrog_oidc_provider_name")] - public string? JfrogOidcProviderName { get; init; } - - /// - /// The OIDC audience. - /// - [JsonPropertyName("audience")] - public string? Audience { get; init; } - /// - /// The JFrog identity mapping name. + /// The full resource name of the GCP Workload Identity Provider (e.g. `projects/<NUM>/locations/global/workloadIdentityPools/<POOL>/providers/<PROVIDER>`). + /// + [JsonPropertyName("workload_identity_provider")] + public string? WorkloadIdentityProvider { get; init; } + + /// + /// The GCP service account email to impersonate. If omitted, the federated token is used directly (direct WIF). + /// + [JsonPropertyName("service_account")] + public string? ServiceAccount { get; init; } + + [JsonPropertyName("created_at")] + public required DateTimeOffset CreatedAt { get; init; } + + [JsonPropertyName("updated_at")] + public required DateTimeOffset UpdatedAt { get; init; } + +} + +/// +/// Private registry configuration for an organization +/// +public record OrgPrivateRegistryConfigurationWithSelectedRepositories +{ + /// + /// The name of the private registry configuration. + /// + [JsonPropertyName("name")] + public required string Name { get; init; } + + /// + /// The registry type. + /// + [JsonPropertyName("registry_type")] + public required RegistryType RegistryType { get; init; } + + /// + /// The authentication type for the private registry. + /// + [JsonPropertyName("auth_type")] + public AuthType? AuthType { get; init; } + + /// + /// The URL of the private registry. + /// + [JsonPropertyName("url")] + public Uri? Url { get; init; } + + /// + /// The username to use when authenticating with the private registry. + /// + [JsonPropertyName("username")] + public string? Username { get; init; } + + /// + /// Whether this private registry replaces the base registry (e.g., npmjs.org for npm, rubygems.org for rubygems). When `true`, Dependabot will only use this registry and will not fall back to the public registry. When `false` (default), Dependabot will use this registry for scoped packages but may fall back to the public registry for other packages. + /// + [JsonPropertyName("replaces_base")] + public bool ReplacesBase { get; init; } = false; + + /// + /// Which type of organization repositories have access to the private registry. `selected` means only the repositories specified by `selected_repository_ids` can access the private registry. + /// + [JsonPropertyName("visibility")] + public required OrganizationActionsSecretVisibility Visibility { get; init; } + + /// + /// An array of repository IDs that can access the organization private registry when `visibility` is set to `selected`. + /// + [JsonPropertyName("selected_repository_ids")] + public IReadOnlyList? SelectedRepositoryIds { get; init; } + + /// + /// The tenant ID of the Azure AD application. + /// + [JsonPropertyName("tenant_id")] + public string? TenantId { get; init; } + + /// + /// The client ID of the Azure AD application. + /// + [JsonPropertyName("client_id")] + public string? ClientId { get; init; } + + /// + /// The AWS region. + /// + [JsonPropertyName("aws_region")] + public string? AwsRegion { get; init; } + + /// + /// The AWS account ID. + /// + [JsonPropertyName("account_id")] + public string? AccountId { get; init; } + + /// + /// The AWS IAM role name. + /// + [JsonPropertyName("role_name")] + public string? RoleName { get; init; } + + /// + /// The CodeArtifact domain. + /// + [JsonPropertyName("domain")] + public string? Domain { get; init; } + + /// + /// The CodeArtifact domain owner. + /// + [JsonPropertyName("domain_owner")] + public string? DomainOwner { get; init; } + + /// + /// The JFrog OIDC provider name. + /// + [JsonPropertyName("jfrog_oidc_provider_name")] + public string? JfrogOidcProviderName { get; init; } + + /// + /// The OIDC audience. + /// + [JsonPropertyName("audience")] + public string? Audience { get; init; } + + /// + /// The JFrog identity mapping name. + /// + [JsonPropertyName("identity_mapping_name")] + public string? IdentityMappingName { get; init; } + + /// + /// The Cloudsmith organization namespace. + /// + [JsonPropertyName("namespace")] + public string? Namespace { get; init; } + + /// + /// The Cloudsmith service account slug. + /// + [JsonPropertyName("service_slug")] + public string? ServiceSlug { get; init; } + + /// + /// The Cloudsmith API host. + /// + [JsonPropertyName("api_host")] + public string? ApiHost { get; init; } + + /// + /// The full resource name of the GCP Workload Identity Provider (e.g. `projects/<NUM>/locations/global/workloadIdentityPools/<POOL>/providers/<PROVIDER>`). /// - [JsonPropertyName("identity_mapping_name")] - public string? IdentityMappingName { get; init; } + [JsonPropertyName("workload_identity_provider")] + public string? WorkloadIdentityProvider { get; init; } /// - /// The Cloudsmith organization namespace. + /// The GCP service account email to impersonate. If omitted, the federated token is used directly (direct WIF). /// - [JsonPropertyName("namespace")] - public string? Namespace { get; init; } - - /// - /// The Cloudsmith service account slug. - /// - [JsonPropertyName("service_slug")] - public string? ServiceSlug { get; init; } - - /// - /// The Cloudsmith API host. - /// - [JsonPropertyName("api_host")] - public string? ApiHost { get; init; } + [JsonPropertyName("service_account")] + public string? ServiceAccount { get; init; } [JsonPropertyName("created_at")] public required DateTimeOffset CreatedAt { get; init; } @@ -16943,7 +17330,7 @@ public enum RepositoryRuleEnforcement public record RepositoryRulesetBypassActor { /// - /// The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, and `Team` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories. + /// The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories. /// [JsonPropertyName("actor_id")] public int? ActorId { get; init; } @@ -17116,6 +17503,44 @@ public record RepositoryRuleRequiredSignatures } +/// +/// An actor allowed to dismiss pull request reviews +/// +public record RepositoryRuleParamsActor +{ + /// + /// ID of the actor that can dismiss reviews. + /// + [JsonPropertyName("id")] + public required int Id { get; init; } + + /// + /// The type of the actor + /// + [JsonPropertyName("type")] + public required RepositoryRuleParamsActorType Type { get; init; } + +} + +/// +/// Specify people, teams, or apps allowed to dismiss pull request reviews. +/// +public record RepositoryRuleParamsDismissalRestriction +{ + /// + /// Specify people, teams, or apps allowed to dismiss pull request reviews. + /// + [JsonPropertyName("allowed_actors")] + public IReadOnlyList? AllowedActors { get; init; } + + /// + /// Whether to restrict review dismissal to specific actors. + /// + [JsonPropertyName("enabled")] + public required bool Enabled { get; init; } + +} + /// /// A required reviewing team /// @@ -17280,58 +17705,6 @@ public record RepositoryRuleTagNamePattern } -/// -/// Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names. -/// -public record RepositoryRuleFilePathRestriction -{ - [JsonPropertyName("type")] - public required RepositoryRuleFilePathRestrictionType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph. -/// -public record RepositoryRuleMaxFilePathLength -{ - [JsonPropertyName("type")] - public required RepositoryRuleMaxFilePathLengthType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits that include files with specified file extensions from being pushed to the commit graph. -/// -public record RepositoryRuleFileExtensionRestriction -{ - [JsonPropertyName("type")] - public required RepositoryRuleFileExtensionRestrictionType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - -/// -/// Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph. -/// -public record RepositoryRuleMaxFileSize -{ - [JsonPropertyName("type")] - public required RepositoryRuleMaxFileSizeType Type { get; init; } - - [JsonPropertyName("parameters")] - public object? Parameters { get; init; } - -} - /// /// Restricted commit /// @@ -17446,6 +17819,58 @@ public record RepositoryRuleCopilotCodeReview } +/// +/// Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names. +/// +public record RepositoryRuleFilePathRestriction +{ + [JsonPropertyName("type")] + public required RepositoryRuleFilePathRestrictionType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph. +/// +public record RepositoryRuleMaxFilePathLength +{ + [JsonPropertyName("type")] + public required RepositoryRuleMaxFilePathLengthType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits that include files with specified file extensions from being pushed to the commit graph. +/// +public record RepositoryRuleFileExtensionRestriction +{ + [JsonPropertyName("type")] + public required RepositoryRuleFileExtensionRestrictionType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + +/// +/// Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph. +/// +public record RepositoryRuleMaxFileSize +{ + [JsonPropertyName("type")] + public required RepositoryRuleMaxFileSizeType Type { get; init; } + + [JsonPropertyName("parameters")] + public object? Parameters { get; init; } + +} + /// /// A repository rule. /// @@ -19446,6 +19871,45 @@ public record ActionsCacheList } +/// +/// A list of active concurrency groups for a repository. +/// +public record ConcurrencyGroupList +{ + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("concurrency_groups")] + public required IReadOnlyList ConcurrencyGroups { get; init; } + +} + +/// +/// A concurrency group with the workflow runs and jobs that are either currently holding +/// or waiting for the concurrency group lease. +/// +public record ConcurrencyGroup +{ + /// + /// The name of the concurrency group. + /// + [JsonPropertyName("group_name")] + public required string GroupName { get; init; } + + /// + /// API URL for this concurrency group. + /// + [JsonPropertyName("group_url")] + public required Uri GroupUrl { get; init; } + + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("group_members")] + public required IReadOnlyList GroupMembers { get; init; } + +} + /// /// Information of a job execution in a workflow run /// @@ -19593,6 +20057,18 @@ public record OidcCustomSubRepo [JsonPropertyName("include_claim_keys")] public IReadOnlyList? IncludeClaimKeys { get; init; } + /// + /// Whether the repository has opted in to the immutable OIDC subject claim format. When `true`, OIDC tokens will use a stable, repository-ID-based `sub` claim. If not set at the repository level, falls back to the organization-level setting. + /// + [JsonPropertyName("use_immutable_subject")] + public bool? UseImmutableSubject { get; init; } + + /// + /// The current `sub` claim prefix for this repository. + /// + [JsonPropertyName("sub_claim_prefix")] + public string? SubClaimPrefix { get; init; } + } /// @@ -19978,6 +20454,26 @@ public record EnvironmentApprovals } +/// +/// A list of concurrency groups associated with a workflow run. +/// +public record ConcurrencyGroupRunList +{ + /// + /// The total number of concurrency groups this workflow run participates in, + /// derived from the run's configuration. This count is not filtered by + /// whether the run currently holds or is waiting in each group, so it can + /// include groups whose `group_members` array is empty (for example, when + /// the run has already released its lease in that group). + /// + [JsonPropertyName("total_count")] + public required int TotalCount { get; init; } + + [JsonPropertyName("concurrency_groups")] + public required IReadOnlyList ConcurrencyGroups { get; init; } + +} + public record ReviewCustomGatesCommentRequired { /// @@ -21094,6 +21590,100 @@ public record CheckSuitePreference } +/// +/// Configuration for code quality setup. +/// +public record CodeQualitySetup +{ + /// + /// Code quality setup has been configured or not. + /// + [JsonPropertyName("state")] + public CodeQualitySetupState? State { get; init; } + + /// + /// Languages to be analyzed. + /// + [JsonPropertyName("languages")] + public IReadOnlyList? Languages { get; init; } + + /// + /// Runner type to be used. + /// + [JsonPropertyName("runner_type")] + public CodeQualitySetupRunnerType? RunnerType { get; init; } + + /// + /// Runner label to be used if the runner type is labeled. + /// + [JsonPropertyName("runner_label")] + public string? RunnerLabel { get; init; } + + /// + /// Timestamp of latest configuration update. + /// + [JsonPropertyName("updated_at")] + public DateTimeOffset? UpdatedAt { get; init; } + + /// + /// The frequency of the periodic analysis. + /// + [JsonPropertyName("schedule")] + public Schedule? Schedule { get; init; } + +} + +/// +/// Configuration for code quality setup. +/// +public record CodeQualitySetupUpdate +{ + /// + /// The desired state of code quality setup. + /// + [JsonPropertyName("state")] + public CodeQualitySetupState? State { get; init; } + + /// + /// Runner type to be used. + /// + [JsonPropertyName("runner_type")] + public CodeQualitySetupRunnerType? RunnerType { get; init; } + + /// + /// Runner label to be used if the runner type is labeled. + /// + [JsonPropertyName("runner_label")] + public string? RunnerLabel { get; init; } + + /// + /// Languages to be analyzed. + /// + [JsonPropertyName("languages")] + public IReadOnlyList? Languages { get; init; } + +} + +/// +/// You can use `run_url` to track the status of the run. This includes a property status and conclusion. +/// You should not rely on this always being an actions workflow run object. +/// +public record CodeQualitySetupUpdateResponse +{ + /// + /// ID of the corresponding run. + /// + [JsonPropertyName("run_id")] + public int? RunId { get; init; } + + /// + /// URL of the corresponding run. + /// + [JsonPropertyName("run_url")] + public string? RunUrl { get; init; } + +} + public record CodeScanningAlertItems { /// @@ -22008,7 +22598,7 @@ public record CodeScanningDefaultSetup /// Code scanning default setup has been configured or not. /// [JsonPropertyName("state")] - public CodeScanningDefaultSetupState? State { get; init; } + public CodeQualitySetupState? State { get; init; } /// /// Languages to be analyzed. @@ -22020,7 +22610,7 @@ public record CodeScanningDefaultSetup /// Runner type to be used. /// [JsonPropertyName("runner_type")] - public CodeScanningDefaultSetupRunnerType? RunnerType { get; init; } + public CodeQualitySetupRunnerType? RunnerType { get; init; } /// /// Runner label to be used if the runner type is labeled. @@ -22063,13 +22653,13 @@ public record CodeScanningDefaultSetupUpdate /// The desired state of code scanning default setup. /// [JsonPropertyName("state")] - public CodeScanningDefaultSetupState? State { get; init; } + public CodeQualitySetupState? State { get; init; } /// /// Runner type to be used. /// [JsonPropertyName("runner_type")] - public CodeScanningDefaultSetupRunnerType? RunnerType { get; init; } + public CodeQualitySetupRunnerType? RunnerType { get; init; } /// /// Runner label to be used if the runner type is labeled. @@ -23855,6 +24445,19 @@ public record GitTree } +/// +/// Repository hash algorithm +/// +public record RepositoryHashAlgorithm +{ + /// + /// The Git hash algorithm used by this repository. + /// + [JsonPropertyName("hash_algorithm")] + public required HashAlgorithm HashAlgorithm { get; init; } + +} + public record HookResponse { [JsonPropertyName("code")] @@ -24203,7 +24806,7 @@ public record NullableIssue public Uri? TimelineUrl { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -26835,7 +27438,12 @@ public record SecretScanningScan public string? Type { get; init; } /// - /// The state of the scan. Either "completed", "running", or "pending" + /// The state of the scan. Either "completed", "running", "pending", "failed", or "unknown". + /// + /// "failed": this scan type has hit its retry limit and has been marked permanently failed. + /// This usually resolves on its own at the next scheduled scan attempt. If "failed" persists, contact Support. + /// + /// "unknown": the scan is in an unrecognized or currently unhandled state. /// [JsonPropertyName("status")] public string? Status { get; init; } @@ -27488,7 +28096,7 @@ public record IssueSearchResultItem public Uri? TimelineUrl { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -28663,6 +29271,34 @@ public record KeySimple } +public record BillingAiCreditUsageReportUser +{ + [JsonPropertyName("timePeriod")] + public required object TimePeriod { get; init; } + + /// + /// The unique identifier of the user. + /// + [JsonPropertyName("user")] + public required string User { get; init; } + + /// + /// The product for the usage report. + /// + [JsonPropertyName("product")] + public string? Product { get; init; } + + /// + /// The model for the usage report. + /// + [JsonPropertyName("model")] + public string? Model { get; init; } + + [JsonPropertyName("usageItems")] + public required IReadOnlyList UsageItems { get; init; } + +} + public record BillingPremiumRequestUsageReportUser { [JsonPropertyName("timePeriod")] @@ -30225,7 +30861,7 @@ public record WebhooksIssue public required string Title { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -30428,7 +31064,7 @@ public record WebhooksIssue2 public required string Title { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public IssueType? Type { get; init; } @@ -37292,6 +37928,134 @@ public record WebhookIssuesEdited } +public record WebhookIssuesFieldAdded +{ + [JsonPropertyName("action")] + public required WebhookIssuesFieldAddedAction Action { get; init; } + + /// + /// An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured + /// on an enterprise account or an organization that's part of an enterprise account. For more information, + /// see "[About enterprise accounts](https://docs.github.com/admin/overview/about-enterprise-accounts)." + /// + [JsonPropertyName("enterprise")] + public EnterpriseWebhooks? Enterprise { get; init; } + + /// + /// The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured + /// for and sent to a GitHub App. For more information, + /// see "[Using webhooks with GitHub Apps](https://docs.github.com/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)." + /// + [JsonPropertyName("installation")] + public SimpleInstallation? Installation { get; init; } + + /// + /// The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. + /// + [JsonPropertyName("issue")] + public required WebhooksIssue Issue { get; init; } + + /// + /// The issue field whose value was set or updated on the issue. + /// + [JsonPropertyName("issue_field")] + public required object IssueField { get; init; } + + /// + /// The value that was set or updated for the issue field. When updating an existing value, the previous value is available in `changes`. + /// + [JsonPropertyName("issue_field_value")] + public object? IssueFieldValue { get; init; } + + /// + /// The previous field value, present when an existing value was updated. + /// + [JsonPropertyName("changes")] + public object? Changes { get; init; } + + /// + /// A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an + /// organization, or when the event occurs from activity in a repository owned by an organization. + /// + [JsonPropertyName("organization")] + public OrganizationSimpleWebhooks? Organization { get; init; } + + /// + /// The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property + /// when the event occurs from activity in a repository. + /// + [JsonPropertyName("repository")] + public required RepositoryWebhooks Repository { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("sender")] + public required SimpleUser Sender { get; init; } + +} + +public record WebhookIssuesFieldRemoved +{ + [JsonPropertyName("action")] + public required WebhookIssuesFieldRemovedAction Action { get; init; } + + /// + /// An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured + /// on an enterprise account or an organization that's part of an enterprise account. For more information, + /// see "[About enterprise accounts](https://docs.github.com/admin/overview/about-enterprise-accounts)." + /// + [JsonPropertyName("enterprise")] + public EnterpriseWebhooks? Enterprise { get; init; } + + /// + /// The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured + /// for and sent to a GitHub App. For more information, + /// see "[Using webhooks with GitHub Apps](https://docs.github.com/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)." + /// + [JsonPropertyName("installation")] + public SimpleInstallation? Installation { get; init; } + + /// + /// The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. + /// + [JsonPropertyName("issue")] + public required WebhooksIssue Issue { get; init; } + + /// + /// The issue field whose value was cleared from the issue. + /// + [JsonPropertyName("issue_field")] + public required object IssueField { get; init; } + + /// + /// The value that was cleared from the issue field. + /// + [JsonPropertyName("issue_field_value")] + public object? IssueFieldValue { get; init; } + + /// + /// A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an + /// organization, or when the event occurs from activity in a repository owned by an organization. + /// + [JsonPropertyName("organization")] + public OrganizationSimpleWebhooks? Organization { get; init; } + + /// + /// The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property + /// when the event occurs from activity in a repository. + /// + [JsonPropertyName("repository")] + public required RepositoryWebhooks Repository { get; init; } + + /// + /// A GitHub user. + /// + [JsonPropertyName("sender")] + public required SimpleUser Sender { get; init; } + +} + public record WebhookIssuesLabeled { [JsonPropertyName("action")] @@ -37678,7 +38442,7 @@ public record WebhookIssuesTyped public required WebhooksIssue Issue { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public required IssueType? Type { get; init; } @@ -37938,7 +38702,7 @@ public record WebhookIssuesUntyped public required WebhooksIssue Issue { get; init; } /// - /// The type of issue. + /// The type assigned to the issue. This is only present for issues in repositories where issue types are supported. /// [JsonPropertyName("type")] public required IssueType? Type { get; init; } @@ -45073,19 +45837,19 @@ public record WebhookSubIssuesParentIssueAdded /// The ID of the parent issue. /// [JsonPropertyName("parent_issue_id")] - public required double ParentIssueId { get; init; } + public double? ParentIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("parent_issue")] - public required Issue ParentIssue { get; init; } + public Issue? ParentIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("parent_issue_repo")] - public required Repository ParentIssueRepo { get; init; } + public Repository? ParentIssueRepo { get; init; } /// /// The ID of the sub-issue. @@ -45119,13 +45883,13 @@ public record WebhookSubIssuesParentIssueAdded /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -45138,19 +45902,19 @@ public record WebhookSubIssuesParentIssueRemoved /// The ID of the parent issue. /// [JsonPropertyName("parent_issue_id")] - public required double ParentIssueId { get; init; } + public double? ParentIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("parent_issue")] - public required Issue ParentIssue { get; init; } + public Issue? ParentIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("parent_issue_repo")] - public required Repository ParentIssueRepo { get; init; } + public Repository? ParentIssueRepo { get; init; } /// /// The ID of the sub-issue. @@ -45184,13 +45948,13 @@ public record WebhookSubIssuesParentIssueRemoved /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -45203,19 +45967,19 @@ public record WebhookSubIssuesSubIssueAdded /// The ID of the sub-issue. /// [JsonPropertyName("sub_issue_id")] - public required double SubIssueId { get; init; } + public double? SubIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("sub_issue")] - public required Issue SubIssue { get; init; } + public Issue? SubIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("sub_issue_repo")] - public required Repository SubIssueRepo { get; init; } + public Repository? SubIssueRepo { get; init; } /// /// The ID of the parent issue. @@ -45249,13 +46013,13 @@ public record WebhookSubIssuesSubIssueAdded /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } @@ -45268,19 +46032,19 @@ public record WebhookSubIssuesSubIssueRemoved /// The ID of the sub-issue. /// [JsonPropertyName("sub_issue_id")] - public required double SubIssueId { get; init; } + public double? SubIssueId { get; init; } /// /// Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. /// [JsonPropertyName("sub_issue")] - public required Issue SubIssue { get; init; } + public Issue? SubIssue { get; init; } /// /// A repository on GitHub. /// [JsonPropertyName("sub_issue_repo")] - public required Repository SubIssueRepo { get; init; } + public Repository? SubIssueRepo { get; init; } /// /// The ID of the parent issue. @@ -45314,13 +46078,13 @@ public record WebhookSubIssuesSubIssueRemoved /// when the event occurs from activity in a repository. /// [JsonPropertyName("repository")] - public RepositoryWebhooks? Repository { get; init; } + public required RepositoryWebhooks Repository { get; init; } /// /// A GitHub user. /// [JsonPropertyName("sender")] - public SimpleUser? Sender { get; init; } + public required SimpleUser Sender { get; init; } } diff --git a/examples/OpenApiCodeGenerator.Examples/output/stripe-api.cs b/examples/OpenApiCodeGenerator.Examples/output/stripe-api.cs index 1366dd5..172a0d5 100644 --- a/examples/OpenApiCodeGenerator.Examples/output/stripe-api.cs +++ b/examples/OpenApiCodeGenerator.Examples/output/stripe-api.cs @@ -1535,7 +1535,19 @@ public enum ApiErrorsType } /// -/// Transaction type: `adjustment`, `advance`, `advance_funding`, `anticipation_repayment`, `application_fee`, `application_fee_refund`, `charge`, `climate_order_purchase`, `climate_order_refund`, `connect_collection_transfer`, `contribution`, `issuing_authorization_hold`, `issuing_authorization_release`, `issuing_dispute`, `issuing_transaction`, `obligation_outbound`, `obligation_reversal_inbound`, `payment`, `payment_failure_refund`, `payment_network_reserve_hold`, `payment_network_reserve_release`, `payment_refund`, `payment_reversal`, `payment_unreconciled`, `payout`, `payout_cancel`, `payout_failure`, `payout_minimum_balance_hold`, `payout_minimum_balance_release`, `refund`, `refund_failure`, `reserve_transaction`, `reserved_funds`, `reserve_hold`, `reserve_release`, `stripe_fee`, `stripe_fx_fee`, `stripe_balance_payment_debit`, `stripe_balance_payment_debit_reversal`, `tax_fee`, `topup`, `topup_reversal`, `transfer`, `transfer_cancel`, `transfer_failure`, or `transfer_refund`. Learn more about [balance transaction types and what they represent](https://stripe.com/docs/reports/balance-transaction-types). To classify transactions for accounting purposes, consider `reporting_category` instead. +/// The type of automatic transfer rule. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum BalanceSettingsResourceAutomaticTransferRuleType +{ + [JsonStringEnumMemberName("transfer_all")] + TransferAll, + [JsonStringEnumMemberName("transfer_up_to_amount")] + TransferUpToAmount +} + +/// +/// Transaction type: `adjustment`, `advance`, `advance_funding`, `anticipation_repayment`, `application_fee`, `application_fee_refund`, `charge`, `climate_order_purchase`, `climate_order_refund`, `connect_collection_transfer`, `contribution`, `inbound_transfer`, `inbound_transfer_reversal`, `issuing_authorization_hold`, `issuing_authorization_release`, `issuing_dispute`, `issuing_transaction`, `obligation_outbound`, `obligation_reversal_inbound`, `payment`, `payment_failure_refund`, `payment_network_reserve_hold`, `payment_network_reserve_release`, `payment_refund`, `payment_reversal`, `payment_unreconciled`, `payout`, `payout_cancel`, `payout_failure`, `payout_minimum_balance_hold`, `payout_minimum_balance_release`, `refund`, `refund_failure`, `reserve_transaction`, `reserved_funds`, `reserve_hold`, `reserve_release`, `stripe_fee`, `stripe_fx_fee`, `stripe_balance_payment_debit`, `stripe_balance_payment_debit_reversal`, `tax_fee`, `topup`, `topup_reversal`, `transfer`, `transfer_cancel`, `transfer_failure`, `transfer_refund`, or `fee_credit_funding`. Learn more about [balance transaction types and what they represent](https://stripe.com/docs/reports/balance-transaction-types). To classify transactions for accounting purposes, consider `reporting_category` instead. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum BalanceTransactionType @@ -1562,6 +1574,12 @@ public enum BalanceTransactionType ConnectCollectionTransfer, [JsonStringEnumMemberName("contribution")] Contribution, + [JsonStringEnumMemberName("fee_credit_funding")] + FeeCreditFunding, + [JsonStringEnumMemberName("inbound_transfer")] + InboundTransfer, + [JsonStringEnumMemberName("inbound_transfer_reversal")] + InboundTransferReversal, [JsonStringEnumMemberName("issuing_authorization_hold")] IssuingAuthorizationHold, [JsonStringEnumMemberName("issuing_authorization_release")] @@ -1824,6 +1842,8 @@ public enum ConfirmationTokensResourcePaymentMethodPreviewType Bancontact, [JsonStringEnumMemberName("billie")] Billie, + [JsonStringEnumMemberName("bizum")] + Bizum, [JsonStringEnumMemberName("blik")] Blik, [JsonStringEnumMemberName("boleto")] @@ -1896,10 +1916,14 @@ public enum ConfirmationTokensResourcePaymentMethodPreviewType SamsungPay, [JsonStringEnumMemberName("satispay")] Satispay, + [JsonStringEnumMemberName("scalapay")] + Scalapay, [JsonStringEnumMemberName("sepa_debit")] SepaDebit, [JsonStringEnumMemberName("sofort")] Sofort, + [JsonStringEnumMemberName("sunbit")] + Sunbit, [JsonStringEnumMemberName("swish")] Swish, [JsonStringEnumMemberName("twint")] @@ -2190,6 +2214,18 @@ public enum InsightsResourcesPaymentEvaluationUserInterventionRaisedType Custom } +/// +/// Whether the credit references a pending invoice item or one or more invoice line items on an invoice. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum InvoiceItemProrationCreditedItemsType +{ + [JsonStringEnumMemberName("invoice_item")] + InvoiceItem, + [JsonStringEnumMemberName("invoice_line_items")] + InvoiceLineItems +} + /// /// Type of payment object associated with this invoice payment. /// @@ -2205,7 +2241,7 @@ public enum InvoicesPaymentsInvoicePaymentAssociatedPaymentType } /// -/// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` +/// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum InvoicesResourceInvoiceTaxIdType @@ -2300,10 +2336,14 @@ public enum InvoicesResourceInvoiceTaxIdType EuOssVat, [JsonStringEnumMemberName("eu_vat")] EuVat, + [JsonStringEnumMemberName("fo_vat")] + FoVat, [JsonStringEnumMemberName("gb_vat")] GbVat, [JsonStringEnumMemberName("ge_vat")] GeVat, + [JsonStringEnumMemberName("gi_tin")] + GiTin, [JsonStringEnumMemberName("gn_nif")] GnNif, [JsonStringEnumMemberName("hk_br")] @@ -2320,6 +2360,8 @@ public enum InvoicesResourceInvoiceTaxIdType InGst, [JsonStringEnumMemberName("is_vat")] IsVat, + [JsonStringEnumMemberName("it_cf")] + ItCf, [JsonStringEnumMemberName("jp_cn")] JpCn, [JsonStringEnumMemberName("jp_rn")] @@ -2380,6 +2422,8 @@ public enum InvoicesResourceInvoiceTaxIdType PhTin, [JsonStringEnumMemberName("pl_nip")] PlNip, + [JsonStringEnumMemberName("py_ruc")] + PyRuc, [JsonStringEnumMemberName("ro_tin")] RoTin, [JsonStringEnumMemberName("rs_pib")] @@ -2968,6 +3012,28 @@ public enum SubscriptionSchedulesResourceInvoiceItemPeriodResourcePeriodStartTyp Timestamp } +/// +/// Controls which subscription items the billing schedule applies to. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum SubscriptionsResourceBillingSchedulesAppliesToType +{ + [JsonStringEnumMemberName("price")] + Price +} + +/// +/// Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum SubscriptionsResourceBillingSchedulesBillUntilType +{ + [JsonStringEnumMemberName("duration")] + Duration, + [JsonStringEnumMemberName("timestamp")] + Timestamp +} + /// /// If `reversal`, this transaction reverses an earlier transaction. /// @@ -3112,6 +3178,16 @@ public enum TerminalReaderReaderResourceInputType Text } +/// +/// The type of content to print. Currently supports `image`. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum TerminalReaderReaderResourcePrintContentType +{ + [JsonStringEnumMemberName("image")] + Image +} + /// /// Type of action performed by the reader. /// @@ -3124,6 +3200,8 @@ public enum TerminalReaderReaderResourceReaderActionType CollectPaymentMethod, [JsonStringEnumMemberName("confirm_payment_intent")] ConfirmPaymentIntent, + [JsonStringEnumMemberName("print_content")] + PrintContent, [JsonStringEnumMemberName("process_payment_intent")] ProcessPaymentIntent, [JsonStringEnumMemberName("process_setup_intent")] @@ -3353,6 +3431,20 @@ public enum AmazonPayPayments Pending } +/// +/// The status of the `app_distribution` capability of the account, or whether the platform can distribute apps to other accounts. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum AppDistribution +{ + [JsonStringEnumMemberName("active")] + Active, + [JsonStringEnumMemberName("inactive")] + Inactive, + [JsonStringEnumMemberName("pending")] + Pending +} + /// /// The status of the BECS Direct Debit (AU) payments capability of the account, or whether the account can directly process BECS Direct Debit (AU) charges. /// @@ -3423,6 +3515,20 @@ public enum BilliePayments Pending } +/// +/// The status of the Bizum capability of the account, or whether the account can directly process Bizum payments. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum BizumPayments +{ + [JsonStringEnumMemberName("active")] + Active, + [JsonStringEnumMemberName("inactive")] + Inactive, + [JsonStringEnumMemberName("pending")] + Pending +} + /// /// The status of the blik payments capability of the account, or whether the account can directly process blik charges. /// @@ -3969,6 +4075,20 @@ public enum SatispayPayments Pending } +/// +/// The status of the Scalapay capability of the account, or whether the account can directly process Scalapay payments. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum ScalapayPayments +{ + [JsonStringEnumMemberName("active")] + Active, + [JsonStringEnumMemberName("inactive")] + Inactive, + [JsonStringEnumMemberName("pending")] + Pending +} + /// /// The status of the SEPA customer_balance payments (EUR currency) capability of the account, or whether the account can directly process SEPA customer_balance charges. /// @@ -4011,6 +4131,20 @@ public enum SofortPayments Pending } +/// +/// The status of the Sunbit capability of the account, or whether the account can directly process Sunbit payments. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum SunbitPayments +{ + [JsonStringEnumMemberName("active")] + Active, + [JsonStringEnumMemberName("inactive")] + Inactive, + [JsonStringEnumMemberName("pending")] + Pending +} + /// /// The status of the Swish capability of the account, or whether the account can directly process Swish payments. /// @@ -6478,7 +6612,7 @@ public enum PaymentStatus } /// -/// This parameter applies to `ui_mode: embedded`. Learn more about the [redirect behavior](https://docs.stripe.com/payments/checkout/custom-success-page?payment-ui=embedded-form) of embedded sessions. Defaults to `always`. +/// This parameter applies to `ui_mode: embedded_page`. Learn more about the [redirect behavior](https://docs.stripe.com/payments/checkout/custom-success-page?payment-ui=embedded-form) of embedded sessions. Defaults to `always`. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum RedirectOnCompletion @@ -6563,6 +6697,24 @@ public enum MandateOptionsPaytoPaymentSchedule Weekly } +/// +/// Schedule at which the future payments will be charged. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum MandatePixPaymentSchedule +{ + [JsonStringEnumMemberName("halfyearly")] + Halfyearly, + [JsonStringEnumMemberName("monthly")] + Monthly, + [JsonStringEnumMemberName("quarterly")] + Quarterly, + [JsonStringEnumMemberName("weekly")] + Weekly, + [JsonStringEnumMemberName("yearly")] + Yearly +} + /// /// Transaction type of the mandate. /// @@ -6710,6 +6862,20 @@ public enum PaymentIntentCaptureMethod /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum PaymentIntentTypeSpecificPaymentMethodOptionsClientCaptureMethod +{ + [JsonStringEnumMemberName("automatic_delayed")] + AutomaticDelayed, + [JsonStringEnumMemberName("manual")] + Manual, + [JsonStringEnumMemberName("manual_preferred")] + ManualPreferred +} + +/// +/// Controls when the funds will be captured from the customer's account. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum PaymentMethodOptionsCardPresentCaptureMethod { [JsonStringEnumMemberName("manual")] Manual, @@ -6835,6 +7001,8 @@ public enum IssuingCardCancellationReason { [JsonStringEnumMemberName("design_rejected")] DesignRejected, + [JsonStringEnumMemberName("fulfillment_error")] + FulfillmentError, [JsonStringEnumMemberName("lost")] Lost, [JsonStringEnumMemberName("stolen")] @@ -6960,13 +7128,15 @@ public enum InboundTransfersPaymentMethodDetailsUsBankAccountNetwork } /// -/// The card network for this settlement report. One of ["visa", "maestro"] +/// The card network for this settlement report. One of ["visa", "maestro", "mastercard"] /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum IssuingSettlementNetwork { [JsonStringEnumMemberName("maestro")] Maestro, + [JsonStringEnumMemberName("mastercard")] + Mastercard, [JsonStringEnumMemberName("visa")] Visa } @@ -7279,6 +7449,14 @@ public enum DeviceType SimulatedStripeS700, [JsonStringEnumMemberName("simulated_stripe_s710")] SimulatedStripeS710, + [JsonStringEnumMemberName("simulated_verifone_m425")] + SimulatedVerifoneM425, + [JsonStringEnumMemberName("simulated_verifone_p630")] + SimulatedVerifoneP630, + [JsonStringEnumMemberName("simulated_verifone_ux700")] + SimulatedVerifoneUx700, + [JsonStringEnumMemberName("simulated_verifone_v660p")] + SimulatedVerifoneV660p, [JsonStringEnumMemberName("simulated_wisepos_e")] SimulatedWiseposE, [JsonStringEnumMemberName("stripe_m2")] @@ -7288,7 +7466,15 @@ public enum DeviceType [JsonStringEnumMemberName("stripe_s710")] StripeS710, [JsonStringEnumMemberName("verifone_P400")] - VerifoneP400 + VerifoneP400, + [JsonStringEnumMemberName("verifone_m425")] + VerifoneM425, + [JsonStringEnumMemberName("verifone_p630")] + VerifoneP630, + [JsonStringEnumMemberName("verifone_ux700")] + VerifoneUx700, + [JsonStringEnumMemberName("verifone_v660p")] + VerifoneV660p } /// @@ -7718,8 +7904,14 @@ public enum RiskLevel Elevated, [JsonStringEnumMemberName("highest")] Highest, + [JsonStringEnumMemberName("low")] + Low, [JsonStringEnumMemberName("normal")] - Normal + Normal, + [JsonStringEnumMemberName("not_assessed")] + NotAssessed, + [JsonStringEnumMemberName("unknown")] + Unknown } /// @@ -7908,6 +8100,18 @@ public enum AuthorizationMethod Swipe } +/// +/// Whether the card was present at the point of sale for the authorization. +/// +[JsonConverter(typeof(JsonStringEnumConverter))] +public enum CardPresence +{ + [JsonStringEnumMemberName("not_present")] + NotPresent, + [JsonStringEnumMemberName("present")] + Present +} + /// /// The reason why the previous card needed to be replaced. /// @@ -7918,6 +8122,8 @@ public enum ReplacementReason Damaged, [JsonStringEnumMemberName("expired")] Expired, + [JsonStringEnumMemberName("fulfillment_error")] + FulfillmentError, [JsonStringEnumMemberName("lost")] Lost, [JsonStringEnumMemberName("stolen")] @@ -8606,12 +8812,16 @@ public enum TerminalReaderReaderResourceToggleValue [JsonConverter(typeof(JsonStringEnumConverter))] public enum TokenCurrency { + [JsonStringEnumMemberName("phantom_cash")] + PhantomCash, [JsonStringEnumMemberName("usdc")] Usdc, [JsonStringEnumMemberName("usdg")] Usdg, [JsonStringEnumMemberName("usdp")] - Usdp + Usdp, + [JsonStringEnumMemberName("usdt")] + Usdt } /// @@ -9348,7 +9558,7 @@ public enum TrialUpdateBehavior } /// -/// Recommended action based on the score of the fraudulent_payment signal. Possible values are `block` and `continue`. +/// Recommended action based on the score of the `fraudulent_payment` signal. Possible values are `block`, `continue` and `request_three_d_secure`. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum RecommendedAction @@ -9360,11 +9570,13 @@ public enum RecommendedAction } /// -/// The type of items in the value list. One of `card_fingerprint`, `card_bin`, `crypto_fingerprint`, `email`, `ip_address`, `country`, `string`, `case_sensitive_string`, `customer_id`, `sepa_debit_fingerprint`, or `us_bank_account_fingerprint`. +/// The type of items in the value list. One of `card_fingerprint`, `card_bin`, `crypto_fingerprint`, `email`, `ip_address`, `country`, `string`, `case_sensitive_string`, `customer_id`, `account`, `sepa_debit_fingerprint`, or `us_bank_account_fingerprint`. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum ItemType { + [JsonStringEnumMemberName("account")] + Account, [JsonStringEnumMemberName("card_bin")] CardBin, [JsonStringEnumMemberName("card_fingerprint")] @@ -10166,6 +10378,12 @@ public record AccountCapabilities [JsonPropertyName("amazon_pay_payments")] public AmazonPayPayments? AmazonPayPayments { get; init; } + /// + /// The status of the `app_distribution` capability of the account, or whether the platform can distribute apps to other accounts. + /// + [JsonPropertyName("app_distribution")] + public AppDistribution? AppDistribution { get; init; } + /// /// The status of the BECS Direct Debit (AU) payments capability of the account, or whether the account can directly process BECS Direct Debit (AU) charges. /// @@ -10196,6 +10414,12 @@ public record AccountCapabilities [JsonPropertyName("billie_payments")] public BilliePayments? BilliePayments { get; init; } + /// + /// The status of the Bizum capability of the account, or whether the account can directly process Bizum payments. + /// + [JsonPropertyName("bizum_payments")] + public BizumPayments? BizumPayments { get; init; } + /// /// The status of the blik payments capability of the account, or whether the account can directly process blik charges. /// @@ -10430,6 +10654,12 @@ public record AccountCapabilities [JsonPropertyName("satispay_payments")] public SatispayPayments? SatispayPayments { get; init; } + /// + /// The status of the Scalapay capability of the account, or whether the account can directly process Scalapay payments. + /// + [JsonPropertyName("scalapay_payments")] + public ScalapayPayments? ScalapayPayments { get; init; } + /// /// The status of the SEPA customer_balance payments (EUR currency) capability of the account, or whether the account can directly process SEPA customer_balance charges. /// @@ -10448,6 +10678,12 @@ public record AccountCapabilities [JsonPropertyName("sofort_payments")] public SofortPayments? SofortPayments { get; init; } + /// + /// The status of the Sunbit capability of the account, or whether the account can directly process Sunbit payments. + /// + [JsonPropertyName("sunbit_payments")] + public SunbitPayments? SunbitPayments { get; init; } + /// /// The status of the Swish capability of the account, or whether the account can directly process Swish payments. /// @@ -11774,6 +12010,28 @@ public record BalanceSettings } +public record BalanceSettingsResourceAutomaticTransferRule +{ + /// + /// The ID of the FinancialAccount that funds will be transferred to during automatic transfers. + /// + [JsonPropertyName("payout_method")] + public required string PayoutMethod { get; init; } + + /// + /// The maximum amount in minor units to transfer to the FinancialAccount. Only applicable when `type` is `transfer_up_to_amount`. + /// + [JsonPropertyName("transfer_up_to_amount")] + public int? TransferUpToAmount { get; init; } + + /// + /// The type of automatic transfer rule. + /// + [JsonPropertyName("type")] + public required BalanceSettingsResourceAutomaticTransferRuleType Type { get; init; } + +} + public record BalanceSettingsResourcePayments { /// @@ -11817,6 +12075,12 @@ public record BalanceSettingsResourcePayoutSchedule public record BalanceSettingsResourcePayouts { + /// + /// Configures per-currency rules for automatically transferring funds from the payments balance to a FinancialAccount. + /// + [JsonPropertyName("automatic_transfer_rules_by_currency")] + public IReadOnlyDictionary>? AutomaticTransferRulesByCurrency { get; init; } + /// /// The minimum balance amount to retain per currency after automatic payouts. Only funds that exceed these amounts are paid out. Learn more about the [minimum balances for automatic payouts](/payouts/minimum-balances-for-automatic-payouts). /// @@ -11857,6 +12121,34 @@ public record BalanceSettingsResourceSettlementTiming [JsonPropertyName("delay_days_override")] public int? DelayDaysOverride { get; init; } + /// + /// Customized start of day configuration for automatic payouts to group and send payments in local timezones with a customized day starting time. For details, see our [Customized start of day](/connect/customized-start-of-day) documentation. + /// + [JsonPropertyName("start_of_day")] + public BalanceSettingsResourceStartOfDay? StartOfDay { get; init; } + +} + +public record BalanceSettingsResourceStartOfDay +{ + /// + /// Hour at which the customized start of day begins according to the given timezone. Must be a [supported customized start of day hour](/connect/customized-start-of-day#available-timezones-and-cutoffs). + /// + [JsonPropertyName("hour")] + public required int Hour { get; init; } + + /// + /// Minutes at which the customized start of day begins according to the given timezone. Must be either 0 or 30. + /// + [JsonPropertyName("minutes")] + public required int Minutes { get; init; } + + /// + /// Timezone for the customized start of day. Must be a [supported customized start of day timezone](/connect/customized-start-of-day#available-timezones-and-cutoffs). + /// + [JsonPropertyName("timezone")] + public required string Timezone { get; init; } + } /// @@ -11958,7 +12250,7 @@ public record BalanceTransaction public required string Status { get; init; } /// - /// Transaction type: `adjustment`, `advance`, `advance_funding`, `anticipation_repayment`, `application_fee`, `application_fee_refund`, `charge`, `climate_order_purchase`, `climate_order_refund`, `connect_collection_transfer`, `contribution`, `issuing_authorization_hold`, `issuing_authorization_release`, `issuing_dispute`, `issuing_transaction`, `obligation_outbound`, `obligation_reversal_inbound`, `payment`, `payment_failure_refund`, `payment_network_reserve_hold`, `payment_network_reserve_release`, `payment_refund`, `payment_reversal`, `payment_unreconciled`, `payout`, `payout_cancel`, `payout_failure`, `payout_minimum_balance_hold`, `payout_minimum_balance_release`, `refund`, `refund_failure`, `reserve_transaction`, `reserved_funds`, `reserve_hold`, `reserve_release`, `stripe_fee`, `stripe_fx_fee`, `stripe_balance_payment_debit`, `stripe_balance_payment_debit_reversal`, `tax_fee`, `topup`, `topup_reversal`, `transfer`, `transfer_cancel`, `transfer_failure`, or `transfer_refund`. Learn more about [balance transaction types and what they represent](https://stripe.com/docs/reports/balance-transaction-types). To classify transactions for accounting purposes, consider `reporting_category` instead. + /// Transaction type: `adjustment`, `advance`, `advance_funding`, `anticipation_repayment`, `application_fee`, `application_fee_refund`, `charge`, `climate_order_purchase`, `climate_order_refund`, `connect_collection_transfer`, `contribution`, `inbound_transfer`, `inbound_transfer_reversal`, `issuing_authorization_hold`, `issuing_authorization_release`, `issuing_dispute`, `issuing_transaction`, `obligation_outbound`, `obligation_reversal_inbound`, `payment`, `payment_failure_refund`, `payment_network_reserve_hold`, `payment_network_reserve_release`, `payment_refund`, `payment_reversal`, `payment_unreconciled`, `payout`, `payout_cancel`, `payout_failure`, `payout_minimum_balance_hold`, `payout_minimum_balance_release`, `refund`, `refund_failure`, `reserve_transaction`, `reserved_funds`, `reserve_hold`, `reserve_release`, `stripe_fee`, `stripe_fx_fee`, `stripe_balance_payment_debit`, `stripe_balance_payment_debit_reversal`, `tax_fee`, `topup`, `topup_reversal`, `transfer`, `transfer_cancel`, `transfer_failure`, `transfer_refund`, or `fee_credit_funding`. Learn more about [balance transaction types and what they represent](https://stripe.com/docs/reports/balance-transaction-types). To classify transactions for accounting purposes, consider `reporting_category` instead. /// [JsonPropertyName("type")] public required BalanceTransactionType Type { get; init; } @@ -13066,7 +13358,7 @@ public record BillingBillResourceInvoicingTaxesTaxRateDetails /// ID of the tax rate /// [JsonPropertyName("tax_rate")] - public required string TaxRate { get; init; } + public required object TaxRate { get; init; } } @@ -14283,8 +14575,8 @@ public record CheckoutSession public string? ClientReferenceId { get; init; } /// - /// The client secret of your Checkout Session. Applies to Checkout Sessions with `ui_mode: embedded` or `ui_mode: custom`. For `ui_mode: embedded`, the client secret is to be used when initializing Stripe.js embedded checkout. - /// For `ui_mode: custom`, use the client secret with [initCheckout](https://docs.stripe.com/js/custom_checkout/init) on your front end. + /// The client secret of your Checkout Session. Applies to Checkout Sessions with `ui_mode: embedded_page` or `ui_mode: elements`. For `ui_mode: embedded_page`, the client secret is to be used when initializing Stripe.js embedded checkout. + /// For `ui_mode: elements`, use the client secret with [initCheckout](https://docs.stripe.com/js/custom_checkout/init) on your front end. /// [JsonPropertyName("client_secret")] public string? ClientSecret { get; init; } @@ -14432,6 +14724,12 @@ public record CheckoutSession [JsonPropertyName("locale")] public CheckoutSessionLocale? Locale { get; init; } + /// + /// Settings for Managed Payments for this Checkout Session and resulting [PaymentIntents](/api/payment_intents/object), [Invoices](/api/invoices/object), and [Subscriptions](/api/subscriptions/object). + /// + [JsonPropertyName("managed_payments")] + public PaymentPagesCheckoutSessionManagedPayments? ManagedPayments { get; init; } + /// /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. /// @@ -14530,13 +14828,13 @@ public record CheckoutSession public string? RecoveredFrom { get; init; } /// - /// This parameter applies to `ui_mode: embedded`. Learn more about the [redirect behavior](https://docs.stripe.com/payments/checkout/custom-success-page?payment-ui=embedded-form) of embedded sessions. Defaults to `always`. + /// This parameter applies to `ui_mode: embedded_page`. Learn more about the [redirect behavior](https://docs.stripe.com/payments/checkout/custom-success-page?payment-ui=embedded-form) of embedded sessions. Defaults to `always`. /// [JsonPropertyName("redirect_on_completion")] public RedirectOnCompletion? RedirectOnCompletion { get; init; } /// - /// Applies to Checkout Sessions with `ui_mode: embedded` or `ui_mode: custom`. The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. + /// Applies to Checkout Sessions with `ui_mode: embedded_page` or `ui_mode: elements`. The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. /// [JsonPropertyName("return_url")] public string? ReturnUrl { get; init; } @@ -14614,7 +14912,7 @@ public record CheckoutSession public UiMode? UiMode { get; init; } /// - /// The URL to the Checkout Session. Applies to Checkout Sessions with `ui_mode: hosted`. Redirect customers to this URL to take them to Checkout. If you’re using [Custom Domains](https://docs.stripe.com/payments/checkout/custom-domains), the URL will use your subdomain. Otherwise, it’ll use `checkout.stripe.com.` + /// The URL to the Checkout Session. Applies to Checkout Sessions with `ui_mode: hosted_page`. Redirect customers to this URL to take them to Checkout. If you’re using [Custom Domains](https://docs.stripe.com/payments/checkout/custom-domains), the URL will use your subdomain. Otherwise, it’ll use `checkout.stripe.com.` /// This value is only present when the session is active. /// [JsonPropertyName("url")] @@ -15445,6 +15743,9 @@ public record CheckoutPixPaymentMethodOptions [JsonPropertyName("expires_after_seconds")] public int? ExpiresAfterSeconds { get; init; } + [JsonPropertyName("mandate_options")] + public PaymentMethodOptionsMandateOptionsPix? MandateOptions { get; init; } + /// /// Indicates that you intend to make future payments with this PaymentIntent's payment method. /// @@ -15455,7 +15756,7 @@ public record CheckoutPixPaymentMethodOptions /// When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication). /// [JsonPropertyName("setup_future_usage")] - public CheckoutAffirmPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } + public CheckoutAmazonPayPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } } @@ -15501,6 +15802,16 @@ public record CheckoutSatispayPaymentMethodOptions } +public record CheckoutScalapayPaymentMethodOptions +{ + /// + /// Controls when the funds will be captured from the customer's account. + /// + [JsonPropertyName("capture_method")] + public CheckoutAffirmPaymentMethodOptionsCaptureMethod? CaptureMethod { get; init; } + +} + public record CheckoutSepaDebitPaymentMethodOptions { [JsonPropertyName("mandate_options")] @@ -15639,6 +15950,9 @@ public record CheckoutSessionPaymentMethodOptions [JsonPropertyName("satispay")] public CheckoutSatispayPaymentMethodOptions? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public CheckoutScalapayPaymentMethodOptions? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public CheckoutSepaDebitPaymentMethodOptions? SepaDebit { get; init; } @@ -15704,7 +16018,7 @@ public record CheckoutTwintPaymentMethodOptions /// When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication). /// [JsonPropertyName("setup_future_usage")] - public CheckoutAffirmPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } + public CheckoutAmazonPayPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } } @@ -16347,6 +16661,9 @@ public record ConfirmationTokensResourcePaymentMethodPreview [JsonPropertyName("billing_details")] public required BillingDetails BillingDetails { get; init; } + [JsonPropertyName("bizum")] + public PaymentMethodBizum? Bizum { get; init; } + [JsonPropertyName("blik")] public PaymentMethodBlik? Blik { get; init; } @@ -16461,12 +16778,18 @@ public record ConfirmationTokensResourcePaymentMethodPreview [JsonPropertyName("satispay")] public PaymentMethodSatispay? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public PaymentMethodScalapay? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public PaymentMethodSepaDebit? SepaDebit { get; init; } [JsonPropertyName("sofort")] public PaymentMethodSofort? Sofort { get; init; } + [JsonPropertyName("sunbit")] + public PaymentMethodSunbit? Sunbit { get; init; } + [JsonPropertyName("swish")] public PaymentMethodSwish? Swish { get; init; } @@ -16605,6 +16928,9 @@ public record ConnectEmbeddedAccountSessionCreateComponents [JsonPropertyName("account_onboarding")] public required ConnectEmbeddedAccountConfigClaim AccountOnboarding { get; init; } + [JsonPropertyName("balance_report")] + public required ConnectEmbeddedBaseConfigClaim BalanceReport { get; init; } + [JsonPropertyName("balances")] public required ConnectEmbeddedPayoutsConfig Balances { get; init; } @@ -16644,6 +16970,9 @@ public record ConnectEmbeddedAccountSessionCreateComponents [JsonPropertyName("payout_details")] public required ConnectEmbeddedBaseConfigClaim PayoutDetails { get; init; } + [JsonPropertyName("payout_reconciliation_report")] + public required ConnectEmbeddedBaseConfigClaim PayoutReconciliationReport { get; init; } + [JsonPropertyName("payouts")] public required ConnectEmbeddedPayoutsConfig Payouts { get; init; } @@ -17635,6 +17964,22 @@ public record CreditNotesPretaxCreditAmount } +public record CreditedItemsInvoiceLineItems +{ + /// + /// The invoice id for the debited line item(s). + /// + [JsonPropertyName("invoice")] + public required string Invoice { get; init; } + + /// + /// IDs of the debited invoice line item(s) on the invoice that correspond to the credit proration. + /// + [JsonPropertyName("invoice_line_items")] + public required IReadOnlyList InvoiceLineItems { get; init; } + +} + public record CurrencyOption { /// @@ -18828,7 +19173,7 @@ public record DeletedCustomer public record DeletedDiscount { /// - /// The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode. + /// The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Not present for subscription mode. /// [JsonPropertyName("checkout_session")] public string? CheckoutSession { get; init; } @@ -18852,7 +19197,7 @@ public record DeletedDiscount public required bool Deleted { get; init; } /// - /// The ID of the discount object. Discounts cannot be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array. + /// The ID of the discount object. Discounts can't be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array. /// [JsonPropertyName("id")] public required string Id { get; init; } @@ -19295,7 +19640,7 @@ public record DestinationDetailsUnimplemented public record Discount { /// - /// The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode. + /// The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Not present for subscription mode. /// [JsonPropertyName("checkout_session")] public string? CheckoutSession { get; init; } @@ -19319,7 +19664,7 @@ public record Discount public int? End { get; init; } /// - /// The ID of the discount object. Discounts cannot be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array. + /// The ID of the discount object. Discounts can't be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array. /// [JsonPropertyName("id")] public required string Id { get; init; } @@ -20385,7 +20730,7 @@ public record Fee public string? Description { get; init; } /// - /// Type of the fee, one of: `application_fee`, `payment_method_passthrough_fee`, `stripe_fee` or `tax`. + /// Type of the fee, one of: `application_fee`, `payment_method_passthrough_fee`, `stripe_fee`, `tax`, or `withheld_tax`. /// [JsonPropertyName("type")] public required string Type { get; init; } @@ -23009,7 +23354,7 @@ public record InsightsResourcesPaymentEvaluationSignalV2 public required RiskLevel RiskLevel { get; init; } /// - /// Score for this insight. Possible values for evaluated payments are -1 and any value between 0 and 100. The value is returned with two decimal places. A score of -1 indicates a test integration and higher scores indicate a higher likelihood of the signal being true. + /// Score for this signal. Possible values for evaluated payments are between 0 and 100. The value is returned with two decimal places and higher scores indicate a higher likelihood of the signal being true. A score of -1 is returned when a model evaluation was not performed, such as requests from incomplete integrations. /// [JsonPropertyName("score")] public required double Score { get; init; } @@ -23230,6 +23575,12 @@ public record Invoice [JsonPropertyName("amount_paid")] public required int AmountPaid { get; init; } + /// + /// Amount, in cents (or local equivalent), that was paid on the invoice outside of Stripe. + /// + [JsonPropertyName("amount_paid_off_stripe")] + public required int AmountPaidOffStripe { get; init; } + /// /// The difference between amount_due and amount_paid, in cents (or local equivalent). /// @@ -23524,13 +23875,13 @@ public record Invoice public object? Payments { get; init; } /// - /// End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. + /// The latest timestamp at which invoice items can be associated with this invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. /// [JsonPropertyName("period_end")] public required int PeriodEnd { get; init; } /// - /// Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. + /// The earliest timestamp at which invoice items can be associated with this invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price. /// [JsonPropertyName("period_start")] public required int PeriodStart { get; init; } @@ -23661,6 +24012,25 @@ public record InvoiceInstallmentsCard } +public record InvoiceItemProrationCreditedItems +{ + /// + /// When `type` is `invoice_item`, the invoice item id for the debited invoice item corresponding to this credit proration. + /// + [JsonPropertyName("invoice_item")] + public string? InvoiceItem { get; init; } + + [JsonPropertyName("invoice_line_item_details")] + public CreditedItemsInvoiceLineItems? InvoiceLineItemDetails { get; init; } + + /// + /// Whether the credit references a pending invoice item or one or more invoice line items on an invoice. + /// + [JsonPropertyName("type")] + public required InvoiceItemProrationCreditedItemsType Type { get; init; } + +} + public record InvoiceItemThresholdReason { /// @@ -23903,6 +24273,34 @@ public record InvoicePaymentMethodOptionsKonbini { } +public record InvoicePaymentMethodOptionsMandateOptionsUpi +{ + /// + /// Amount to be charged for future payments. + /// + [JsonPropertyName("amount")] + public int? Amount { get; init; } + + /// + /// One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param. + /// + [JsonPropertyName("amount_type")] + public AmountType? AmountType { get; init; } + + /// + /// A description of the mandate or subscription that is meant to be displayed to the customer. + /// + [JsonPropertyName("description")] + public string? Description { get; init; } + + /// + /// End date of the mandate or subscription. + /// + [JsonPropertyName("end_date")] + public int? EndDate { get; init; } + +} + public record InvoicePaymentMethodOptionsPayto { [JsonPropertyName("mandate_options")] @@ -23910,10 +24308,33 @@ public record InvoicePaymentMethodOptionsPayto } +public record InvoicePaymentMethodOptionsPix +{ + /// + /// Determines if the amount includes the IOF tax. + /// + [JsonPropertyName("amount_includes_iof")] + public AmountIncludesIof? AmountIncludesIof { get; init; } + + /// + /// The number of seconds (between 10 and 1209600) after which Pix payment will expire. Defaults to 86400 seconds. + /// + [JsonPropertyName("expires_after_seconds")] + public int? ExpiresAfterSeconds { get; init; } + +} + public record InvoicePaymentMethodOptionsSepaDebit { } +public record InvoicePaymentMethodOptionsUpi +{ + [JsonPropertyName("mandate_options")] + public InvoicePaymentMethodOptionsMandateOptionsUpi? MandateOptions { get; init; } + +} + public record InvoicePaymentMethodOptionsUsBankAccount { [JsonPropertyName("financial_connections")] @@ -24352,12 +24773,24 @@ public record InvoicesPaymentMethodOptions [JsonPropertyName("payto")] public InvoicePaymentMethodOptionsPayto? Payto { get; init; } + /// + /// If paying by `pix`, this sub-hash contains details about the Pix payment method options to pass to the invoice’s PaymentIntent. + /// + [JsonPropertyName("pix")] + public InvoicePaymentMethodOptionsPix? Pix { get; init; } + /// /// If paying by `sepa_debit`, this sub-hash contains details about the SEPA Direct Debit payment method options to pass to the invoice’s PaymentIntent. /// [JsonPropertyName("sepa_debit")] public InvoicePaymentMethodOptionsSepaDebit? SepaDebit { get; init; } + /// + /// If paying by `upi`, this sub-hash contains details about the UPI payment method options to pass to the invoice’s PaymentIntent. + /// + [JsonPropertyName("upi")] + public InvoicePaymentMethodOptionsUpi? Upi { get; init; } + /// /// If paying by `us_bank_account`, this sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent. /// @@ -24495,7 +24928,7 @@ public record InvoicesResourceInvoiceRendering public record InvoicesResourceInvoiceTaxId { /// - /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` + /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` /// [JsonPropertyName("type")] public required InvoicesResourceInvoiceTaxIdType Type { get; init; } @@ -24643,6 +25076,12 @@ public record IssuingAuthorization [JsonPropertyName("card")] public required IssuingCard Card { get; init; } + /// + /// Whether the card was present at the point of sale for the authorization. + /// + [JsonPropertyName("card_presence")] + public CardPresence? CardPresence { get; init; } + /// /// The cardholder to whom this authorization belongs. /// @@ -25122,7 +25561,7 @@ public record IssuingDispute public required object Transaction { get; init; } /// - /// [Treasury](https://docs.stripe.com/api/treasury) details related to this dispute if it was created on a [FinancialAccount](/docs/api/treasury/financial_accounts + /// [Treasury](https://docs.stripe.com/api/treasury) details related to this dispute if it was created on a [FinancialAccount](https://docs.stripe.com/api/treasury/financial_accounts) /// [JsonPropertyName("treasury")] public IssuingDisputeTreasury? Treasury { get; init; } @@ -25135,7 +25574,7 @@ public record IssuingDispute public record IssuingPersonalizationDesign { /// - /// The file for the card logo to use with physical bundles that support card logos. Must have a `purpose` value of `issuing_logo`. + /// The file for the card logo to use with physical bundles that support card logos. Must have a `purpose` value of `issuing_logo`. Image must be in PNG format with dimensions of 1000px by 200px. It must be a binary (black and white) image containing a black logo on a white background. We don't accept grayscale. /// [JsonPropertyName("card_logo")] public object? CardLogo { get; init; } @@ -25314,7 +25753,7 @@ public record IssuingSettlement public required int NetTotalAmount { get; init; } /// - /// The card network for this settlement report. One of ["visa", "maestro"] + /// The card network for this settlement report. One of ["visa", "maestro", "mastercard"] /// [JsonPropertyName("network")] public required IssuingSettlementNetwork Network { get; init; } @@ -26103,6 +26542,12 @@ public record IssuingCardApplePay public record IssuingCardAuthorizationControls { + /// + /// Array of card presence statuses from which authorizations will be allowed. Possible options are `present`, `not_present`. All other statuses will be blocked. Cannot be set with `blocked_card_presences`. Provide an empty value to unset this control. + /// + [JsonPropertyName("allowed_card_presences")] + public IReadOnlyList? AllowedCardPresences { get; init; } + /// /// Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to allow. All other categories will be blocked. Cannot be set with `blocked_categories`. /// @@ -26115,6 +26560,12 @@ public record IssuingCardAuthorizationControls [JsonPropertyName("allowed_merchant_countries")] public IReadOnlyList? AllowedMerchantCountries { get; init; } + /// + /// Array of card presence statuses from which authorizations will be declined. Possible options are `present`, `not_present`. Cannot be set with `allowed_card_presences`. Provide an empty value to unset this control. + /// + [JsonPropertyName("blocked_card_presences")] + public IReadOnlyList? BlockedCardPresences { get; init; } + /// /// Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to decline. All other categories will be allowed. Cannot be set with `allowed_categories`. /// @@ -26348,6 +26799,12 @@ public record IssuingCardholderAddress public record IssuingCardholderAuthorizationControls { + /// + /// Array of card presence statuses from which authorizations will be allowed. Possible options are `present`, `not_present`. All other statuses will be blocked. Cannot be set with `blocked_card_presences`. Provide an empty value to unset this control. + /// + [JsonPropertyName("allowed_card_presences")] + public IReadOnlyList? AllowedCardPresences { get; init; } + /// /// Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to allow. All other categories will be blocked. Cannot be set with `blocked_categories`. /// @@ -26360,6 +26817,12 @@ public record IssuingCardholderAuthorizationControls [JsonPropertyName("allowed_merchant_countries")] public IReadOnlyList? AllowedMerchantCountries { get; init; } + /// + /// Array of card presence statuses from which authorizations will be declined. Possible options are `present`, `not_present`. Cannot be set with `allowed_card_presences`. Provide an empty value to unset this control. + /// + [JsonPropertyName("blocked_card_presences")] + public IReadOnlyList? BlockedCardPresences { get; init; } + /// /// Array of strings containing [categories](https://docs.stripe.com/api#issuing_authorization_object-merchant_data-category) of authorizations to decline. All other categories will be allowed. Cannot be set with `allowed_categories`. /// @@ -28402,6 +28865,18 @@ public record MandateLink public record MandateMultiUse { + /// + /// The amount of the payment on a multi use mandate. + /// + [JsonPropertyName("amount")] + public int? Amount { get; init; } + + /// + /// The currency of the payment on a multi use mandate. + /// + [JsonPropertyName("currency")] + public string? Currency { get; init; } + } public record MandateNaverPay @@ -28530,12 +29005,18 @@ public record MandatePaymentMethodDetails [JsonPropertyName("payto")] public MandatePayto? Payto { get; init; } + [JsonPropertyName("pix")] + public MandatePix? Pix { get; init; } + [JsonPropertyName("revolut_pay")] public MandateRevolutPay? RevolutPay { get; init; } [JsonPropertyName("sepa_debit")] public MandateSepaDebit? SepaDebit { get; init; } + [JsonPropertyName("twint")] + public MandateTwint? Twint { get; init; } + /// /// This mandate corresponds with a specific payment method type. The `payment_method_details` includes an additional hash with the same name and contains mandate information that's specific to that payment method. /// @@ -28612,6 +29093,46 @@ public record MandatePayto } +public record MandatePix +{ + /// + /// Determines if the amount includes the IOF tax. + /// + [JsonPropertyName("amount_includes_iof")] + public AmountIncludesIof? AmountIncludesIof { get; init; } + + /// + /// Type of amount. + /// + [JsonPropertyName("amount_type")] + public AmountType? AmountType { get; init; } + + /// + /// Date when the mandate expires and no further payments will be charged, in `YYYY-MM-DD`. + /// + [JsonPropertyName("end_date")] + public string? EndDate { get; init; } + + /// + /// Schedule at which the future payments will be charged. + /// + [JsonPropertyName("payment_schedule")] + public MandatePixPaymentSchedule? PaymentSchedule { get; init; } + + /// + /// Subscription name displayed to buyers in their bank app. + /// + [JsonPropertyName("reference")] + public string? Reference { get; init; } + + /// + /// Start date of the mandate, in `YYYY-MM-DD`. + /// + [JsonPropertyName("start_date")] + public string? StartDate { get; init; } + +} + public record MandateRevolutPay { } @@ -28648,6 +29169,10 @@ public record MandateSingleUse } +public record MandateTwint +{ +} + public record MandateUpi { /// @@ -29092,6 +29617,22 @@ public record PaymentAttemptRecord } +public record PaymentData +{ + /// + /// An arbitrary string attached to the destination payment. Often useful for displaying to users. + /// + [JsonPropertyName("description")] + public string? Description { get; init; } + + /// + /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. + /// + [JsonPropertyName("metadata")] + public IReadOnlyDictionary? Metadata { get; init; } + +} + public record PaymentFlowsAmountDetails { /// @@ -29192,13 +29733,13 @@ public record PaymentFlowsAmountDetailsResourceShipping public int? Amount { get; init; } /// - /// If a physical good is being shipped, the postal code of where it is being shipped from. At most 10 alphanumeric characters long, hyphens are allowed. + /// If a physical good is being shipped, the postal code of where it is being shipped from. At most 10 alphanumeric characters long, hyphens and spaces are allowed. /// [JsonPropertyName("from_postal_code")] public string? FromPostalCode { get; init; } /// - /// If a physical good is being shipped, the postal code of where it is being shipped to. At most 10 alphanumeric characters long, hyphens are allowed. + /// If a physical good is being shipped, the postal code of where it is being shipped to. At most 10 alphanumeric characters long, hyphens and spaces are allowed. /// [JsonPropertyName("to_postal_code")] public string? ToPostalCode { get; init; } @@ -29712,6 +30253,12 @@ public record PaymentIntent [JsonPropertyName("livemode")] public required bool Livemode { get; init; } + /// + /// Settings for Managed Payments. + /// + [JsonPropertyName("managed_payments")] + public SmorResourceManagedPayments? ManagedPayments { get; init; } + /// /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Learn more about [storing information in metadata](https://docs.stripe.com/payments/payment-intents/creating-payment-intents#storing-information-in-metadata). /// @@ -29917,6 +30464,9 @@ public record PaymentIntentNextAction [JsonPropertyName("alipay_handle_redirect")] public PaymentIntentNextActionAlipayHandleRedirect? AlipayHandleRedirect { get; init; } + [JsonPropertyName("blik_authorize")] + public PaymentIntentNextActionBlikAuthorize? BlikAuthorize { get; init; } + [JsonPropertyName("boleto_display_details")] public PaymentIntentNextActionBoleto? BoletoDisplayDetails { get; init; } @@ -29929,6 +30479,9 @@ public record PaymentIntentNextAction [JsonPropertyName("display_bank_transfer_instructions")] public PaymentIntentNextActionDisplayBankTransferInstructions? DisplayBankTransferInstructions { get; init; } + [JsonPropertyName("klarna_display_qr_code")] + public PaymentIntentNextActionKlarnaDisplayQrCode? KlarnaDisplayQrCode { get; init; } + [JsonPropertyName("konbini_display_details")] public PaymentIntentNextActionKonbini? KonbiniDisplayDetails { get; init; } @@ -30010,6 +30563,10 @@ public record PaymentIntentNextActionAlipayHandleRedirect } +public record PaymentIntentNextActionBlikAuthorize +{ +} + public record PaymentIntentNextActionBoleto { /// @@ -30185,6 +30742,34 @@ public record PaymentIntentNextActionDisplayOxxoDetails } +public record PaymentIntentNextActionKlarnaDisplayQrCode +{ + /// + /// The data being used to generate QR code + /// + [JsonPropertyName("data")] + public required string Data { get; init; } + + /// + /// The timestamp at which the QR code expires. + /// + [JsonPropertyName("expires_at")] + public int? ExpiresAt { get; init; } + + /// + /// The image_url_png string used to render QR code + /// + [JsonPropertyName("image_url_png")] + public required string ImageUrlPng { get; init; } + + /// + /// The image_url_svg string used to render QR code + /// + [JsonPropertyName("image_url_svg")] + public required string ImageUrlSvg { get; init; } + +} + public record PaymentIntentNextActionKonbini { /// @@ -30616,6 +31201,9 @@ public record PaymentIntentPaymentMethodOptions [JsonPropertyName("billie")] public object? Billie { get; init; } + [JsonPropertyName("bizum")] + public object? Bizum { get; init; } + [JsonPropertyName("blik")] public object? Blik { get; init; } @@ -30721,6 +31309,9 @@ public record PaymentIntentPaymentMethodOptions [JsonPropertyName("satispay")] public object? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public object? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public object? SepaDebit { get; init; } @@ -31393,6 +31984,12 @@ public record PaymentLink [JsonPropertyName("livemode")] public required bool Livemode { get; init; } + /// + /// Settings for Managed Payments for this Payment Link and resulting [CheckoutSessions](/api/checkout/sessions/object), [PaymentIntents](/api/payment_intents/object), [Invoices](/api/invoices/object), and [Subscriptions](/api/subscriptions/object). + /// + [JsonPropertyName("managed_payments")] + public PaymentPagesCheckoutSessionManagedPayments? ManagedPayments { get; init; } + /// /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. /// @@ -31432,6 +32029,12 @@ public record PaymentLink [JsonPropertyName("payment_method_collection")] public required PaymentMethodCollection PaymentMethodCollection { get; init; } + /// + /// Payment-method-specific configuration. + /// + [JsonPropertyName("payment_method_options")] + public PaymentLinksResourcePaymentMethodOptions? PaymentMethodOptions { get; init; } + /// /// The list of payment method types that customers can use. When `null`, Stripe will dynamically show relevant payment methods you've enabled in your [payment method settings](https://dashboard.stripe.com/settings/payment_methods). /// @@ -31536,6 +32139,26 @@ public record PaymentLinksResourceBusinessName } +public record PaymentLinksResourceCardPaymentMethodOptions +{ + /// + /// Restrictions to apply to the card payment method. For example, you can block specific card brands. + /// + [JsonPropertyName("restrictions")] + public PaymentLinksResourceCardRestrictions? Restrictions { get; init; } + +} + +public record PaymentLinksResourceCardRestrictions +{ + /// + /// The card brands to block. If a customer enters or selects a card belonging to a blocked brand, they can't complete the payment. + /// + [JsonPropertyName("brands_blocked")] + public required IReadOnlyList BrandsBlocked { get; init; } + +} + public record PaymentLinksResourceCompletedSessions { /// @@ -31927,6 +32550,16 @@ public record PaymentLinksResourcePaymentIntentData } +public record PaymentLinksResourcePaymentMethodOptions +{ + /// + /// Configuration for `card` payment methods. + /// + [JsonPropertyName("card")] + public PaymentLinksResourceCardPaymentMethodOptions? Card { get; init; } + +} + public record PaymentLinksResourcePaymentMethodReuseAgreement { /// @@ -32097,6 +32730,9 @@ public record PaymentMethod [JsonPropertyName("billing_details")] public required BillingDetails BillingDetails { get; init; } + [JsonPropertyName("bizum")] + public PaymentMethodBizum? Bizum { get; init; } + [JsonPropertyName("blik")] public PaymentMethodBlik? Blik { get; init; } @@ -32250,12 +32886,18 @@ public record PaymentMethod [JsonPropertyName("satispay")] public PaymentMethodSatispay? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public PaymentMethodScalapay? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public PaymentMethodSepaDebit? SepaDebit { get; init; } [JsonPropertyName("sofort")] public PaymentMethodSofort? Sofort { get; init; } + [JsonPropertyName("sunbit")] + public PaymentMethodSunbit? Sunbit { get; init; } + [JsonPropertyName("swish")] public PaymentMethodSwish? Swish { get; init; } @@ -32384,6 +33026,10 @@ public record PaymentMethodBillie { } +public record PaymentMethodBizum +{ +} + public record PaymentMethodBlik { } @@ -32890,6 +33536,9 @@ public record PaymentMethodConfiguration [JsonPropertyName("billie")] public PaymentMethodConfigResourcePaymentMethodProperties? Billie { get; init; } + [JsonPropertyName("bizum")] + public PaymentMethodConfigResourcePaymentMethodProperties? Bizum { get; init; } + [JsonPropertyName("blik")] public PaymentMethodConfigResourcePaymentMethodProperties? Blik { get; init; } @@ -33034,12 +33683,18 @@ public record PaymentMethodConfiguration [JsonPropertyName("satispay")] public PaymentMethodConfigResourcePaymentMethodProperties? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public PaymentMethodConfigResourcePaymentMethodProperties? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public PaymentMethodConfigResourcePaymentMethodProperties? SepaDebit { get; init; } [JsonPropertyName("sofort")] public PaymentMethodConfigResourcePaymentMethodProperties? Sofort { get; init; } + [JsonPropertyName("sunbit")] + public PaymentMethodConfigResourcePaymentMethodProperties? Sunbit { get; init; } + [JsonPropertyName("swish")] public PaymentMethodConfigResourcePaymentMethodProperties? Swish { get; init; } @@ -33128,6 +33783,9 @@ public record PaymentMethodDetails [JsonPropertyName("billie")] public PaymentMethodDetailsBillie? Billie { get; init; } + [JsonPropertyName("bizum")] + public PaymentMethodDetailsBizum? Bizum { get; init; } + [JsonPropertyName("blik")] public PaymentMethodDetailsBlik? Blik { get; init; } @@ -33233,6 +33891,9 @@ public record PaymentMethodDetails [JsonPropertyName("satispay")] public PaymentMethodDetailsSatispay? Satispay { get; init; } + [JsonPropertyName("scalapay")] + public PaymentMethodDetailsScalapay? Scalapay { get; init; } + [JsonPropertyName("sepa_debit")] public PaymentMethodDetailsSepaDebit? SepaDebit { get; init; } @@ -33242,6 +33903,9 @@ public record PaymentMethodDetails [JsonPropertyName("stripe_account")] public PaymentMethodDetailsStripeAccount? StripeAccount { get; init; } + [JsonPropertyName("sunbit")] + public PaymentMethodDetailsSunbit? Sunbit { get; init; } + [JsonPropertyName("swish")] public PaymentMethodDetailsSwish? Swish { get; init; } @@ -33390,13 +34054,13 @@ public record PaymentMethodDetailsAcssDebit public record PaymentMethodDetailsAffirm { /// - /// ID of the [location](https://docs.stripe.com/api/terminal/locations) that this transaction's reader is assigned to. + /// ID of the location that this reader is assigned to. /// [JsonPropertyName("location")] public string? Location { get; init; } /// - /// ID of the [reader](https://docs.stripe.com/api/terminal/readers) this transaction was made on. + /// ID of the reader this transaction was made on. /// [JsonPropertyName("reader")] public string? Reader { get; init; } @@ -33418,7 +34082,7 @@ public record PaymentMethodDetailsAfterpayClearpay public string? OrderId { get; init; } /// - /// Order identifier shown to the merchant in Afterpay’s online portal. + /// Order identifier shown to the merchant in Afterpay's online portal. /// [JsonPropertyName("reference")] public string? Reference { get; init; } @@ -33583,6 +34247,16 @@ public record PaymentMethodDetailsBillie } +public record PaymentMethodDetailsBizum +{ + /// + /// The Bizum transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsBlik { /// @@ -34519,6 +35193,12 @@ public record PaymentMethodDetailsKakaoPay public record PaymentMethodDetailsKlarna { + /// + /// ID of the [location](https://docs.stripe.com/api/terminal/locations) that this transaction's reader is assigned to. + /// + [JsonPropertyName("location")] + public string? Location { get; init; } + /// /// The payer details for this transaction. /// @@ -34539,6 +35219,12 @@ public record PaymentMethodDetailsKlarna [JsonPropertyName("preferred_locale")] public string? PreferredLocale { get; init; } + /// + /// ID of the [reader](https://docs.stripe.com/api/terminal/readers) this transaction was made on. + /// + [JsonPropertyName("reader")] + public string? Reader { get; init; } + } public record PaymentMethodDetailsKonbini @@ -34786,6 +35472,52 @@ public record PaymentMethodDetailsPayco } +public record PaymentMethodDetailsPaymentRecordAcssDebit +{ + /// + /// Name of the bank associated with the bank account. + /// + [JsonPropertyName("bank_name")] + public string? BankName { get; init; } + + /// + /// Estimated date to debit the customer's bank account. A date string in YYYY-MM-DD format. + /// + [JsonPropertyName("expected_debit_date")] + public string? ExpectedDebitDate { get; init; } + + /// + /// Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. + /// + [JsonPropertyName("fingerprint")] + public string? Fingerprint { get; init; } + + /// + /// Institution number of the bank account + /// + [JsonPropertyName("institution_number")] + public string? InstitutionNumber { get; init; } + + /// + /// Last four digits of the bank account number. + /// + [JsonPropertyName("last4")] + public string? Last4 { get; init; } + + /// + /// ID of the mandate used to make this payment. + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + + /// + /// Transit number of the bank account. + /// + [JsonPropertyName("transit_number")] + public string? TransitNumber { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordAffirm { /// @@ -34824,6 +35556,32 @@ public record PaymentMethodDetailsPaymentRecordAfterpayClearpay } +public record PaymentMethodDetailsPaymentRecordAlma +{ + [JsonPropertyName("installments")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAlmaDetailsResourceInstallments? Installments { get; init; } + + /// + /// The Alma transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordAmazonPay +{ + [JsonPropertyName("funding")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAmazonPayDetailsResourceFunding? Funding { get; init; } + + /// + /// The Amazon Pay transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordBancontact { /// @@ -34876,6 +35634,36 @@ public record PaymentMethodDetailsPaymentRecordBancontact } +public record PaymentMethodDetailsPaymentRecordBillie +{ + /// + /// The Billie transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordBizum +{ + /// + /// The Bizum transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordBlik +{ + /// + /// A unique and immutable identifier assigned by BLIK to every buyer. + /// + [JsonPropertyName("buyer_id")] + public string? BuyerId { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordBoleto { /// @@ -34908,6 +35696,22 @@ public record PaymentMethodDetailsPaymentRecordCashapp } +public record PaymentMethodDetailsPaymentRecordEps +{ + /// + /// The customer's bank. Should be one of `arzte_und_apotheker_bank`, `austrian_anadi_bank_ag`, `bank_austria`, `bankhaus_carl_spangler`, `bankhaus_schelhammer_und_schattera_ag`, `bawag_psk_ag`, `bks_bank_ag`, `brull_kallmus_bank_ag`, `btv_vier_lander_bank`, `capital_bank_grawe_gruppe_ag`, `deutsche_bank_ag`, `dolomitenbank`, `easybank_ag`, `erste_bank_und_sparkassen`, `hypo_alpeadriabank_international_ag`, `hypo_noe_lb_fur_niederosterreich_u_wien`, `hypo_oberosterreich_salzburg_steiermark`, `hypo_tirol_bank_ag`, `hypo_vorarlberg_bank_ag`, `hypo_bank_burgenland_aktiengesellschaft`, `marchfelder_bank`, `oberbank_ag`, `raiffeisen_bankengruppe_osterreich`, `schoellerbank_ag`, `sparda_bank_wien`, `volksbank_gruppe`, `volkskreditbank_ag`, or `vr_bank_braunau` + /// + [JsonPropertyName("bank")] + public PaymentMethodDetailsEpsBank? Bank { get; init; } + + /// + /// Owner's verified full name. Values are verified or provided by EPS directly (if supported) at the time of authorization or settlement. They cannot be set or mutated. EPS rarely provides this information so the attribute is usually empty. + /// + [JsonPropertyName("verified_name")] + public string? VerifiedName { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordGiropay { /// @@ -34998,6 +35802,40 @@ public record PaymentMethodDetailsPaymentRecordKakaoPay } +public record PaymentMethodDetailsPaymentRecordKlarna +{ + /// + /// ID of the [location](https://docs.stripe.com/api/terminal/locations) that this transaction's reader is assigned to. + /// + [JsonPropertyName("location")] + public string? Location { get; init; } + + /// + /// The payer details for this transaction. + /// + [JsonPropertyName("payer_details")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodKlarnaDetailsResourcePayerDetails? PayerDetails { get; init; } + + /// + /// The Klarna payment method used for this transaction. Can be one of `pay_later`, `pay_now`, `pay_with_financing`, or `pay_in_installments` + /// + [JsonPropertyName("payment_method_category")] + public string? PaymentMethodCategory { get; init; } + + /// + /// Preferred language of the Klarna authorization page that the customer is redirected to. Can be one of `de-AT`, `en-AT`, `nl-BE`, `fr-BE`, `en-BE`, `de-DE`, `en-DE`, `da-DK`, `en-DK`, `es-ES`, `en-ES`, `fi-FI`, `sv-FI`, `en-FI`, `en-GB`, `en-IE`, `it-IT`, `en-IT`, `nl-NL`, `en-NL`, `nb-NO`, `en-NO`, `sv-SE`, `en-SE`, `en-US`, `es-US`, `fr-FR`, `en-FR`, `cs-CZ`, `en-CZ`, `ro-RO`, `en-RO`, `el-GR`, `en-GR`, `en-AU`, `en-NZ`, `en-CA`, `fr-CA`, `pl-PL`, `en-PL`, `pt-PT`, `en-PT`, `de-CH`, `fr-CH`, `it-CH`, or `en-CH` + /// + [JsonPropertyName("preferred_locale")] + public string? PreferredLocale { get; init; } + + /// + /// ID of the [reader](https://docs.stripe.com/api/terminal/readers) this transaction was made on. + /// + [JsonPropertyName("reader")] + public string? Reader { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordKonbini { /// @@ -35008,6 +35846,16 @@ public record PaymentMethodDetailsPaymentRecordKonbini } +public record PaymentMethodDetailsPaymentRecordLink +{ + /// + /// Two-letter ISO code representing the funding source country beneath the Link payment. You could use this attribute to get a sense of international fees. + /// + [JsonPropertyName("country")] + public string? Country { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordMbWay { } @@ -35064,6 +35912,32 @@ public record PaymentMethodDetailsPaymentRecordOxxo } +public record PaymentMethodDetailsPaymentRecordP24 +{ + /// + /// The customer's bank. Can be one of `ing`, `citi_handlowy`, `tmobile_usbugi_bankowe`, `plus_bank`, `etransfer_pocztowy24`, `banki_spbdzielcze`, `bank_nowy_bfg_sa`, `getin_bank`, `velobank`, `blik`, `noble_pay`, `ideabank`, `envelobank`, `santander_przelew24`, `nest_przelew`, `mbank_mtransfer`, `inteligo`, `pbac_z_ipko`, `bnp_paribas`, `credit_agricole`, `toyota_bank`, `bank_pekao_sa`, `volkswagen_bank`, `bank_millennium`, `alior_bank`, or `boz`. + /// + [JsonPropertyName("bank")] + public PaymentMethodDetailsP24Bank? Bank { get; init; } + + /// + /// Unique reference for this Przelewy24 payment. + /// + [JsonPropertyName("reference")] + public string? Reference { get; init; } + + /// + /// Owner's verified full name. Values are verified or provided by Przelewy24 directly (if supported) at the time of authorization or settlement. They cannot be set or mutated. Przelewy24 rarely provides this information so the attribute is usually empty. + /// + [JsonPropertyName("verified_name")] + public string? VerifiedName { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordPayByBank +{ +} + public record PaymentMethodDetailsPaymentRecordPayco { /// @@ -35102,6 +35976,34 @@ public record PaymentMethodDetailsPaymentRecordPaynow } +public record PaymentMethodDetailsPaymentRecordPayto +{ + /// + /// Bank-State-Branch number of the bank account. + /// + [JsonPropertyName("bsb_number")] + public string? BsbNumber { get; init; } + + /// + /// Last four digits of the bank account number. + /// + [JsonPropertyName("last4")] + public string? Last4 { get; init; } + + /// + /// ID of the mandate used to make this payment. + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + + /// + /// The PayID alias for the bank account. + /// + [JsonPropertyName("pay_id")] + public string? PayId { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordPix { /// @@ -35110,6 +36012,12 @@ public record PaymentMethodDetailsPaymentRecordPix [JsonPropertyName("bank_transaction_id")] public string? BankTransactionId { get; init; } + /// + /// ID of the multi use Mandate generated by the PaymentIntent + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + } public record PaymentMethodDetailsPaymentRecordPromptpay @@ -35122,6 +36030,19 @@ public record PaymentMethodDetailsPaymentRecordPromptpay } +public record PaymentMethodDetailsPaymentRecordRevolutPay +{ + [JsonPropertyName("funding")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodRevolutPayDetailsResourceFunding? Funding { get; init; } + + /// + /// The Revolut Pay transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordSamsungPay { /// @@ -35138,6 +36059,26 @@ public record PaymentMethodDetailsPaymentRecordSamsungPay } +public record PaymentMethodDetailsPaymentRecordSatispay +{ + /// + /// The Satispay transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordScalapay +{ + /// + /// The Scalapay transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsPaymentRecordSepaDebit { /// @@ -35266,6 +36207,22 @@ public record PaymentMethodDetailsPaymentRecordSwish public record PaymentMethodDetailsPaymentRecordTwint { + /// + /// ID of the multi use Mandate generated by the PaymentIntent + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + +} + +public record PaymentMethodDetailsPaymentRecordUpi +{ + /// + /// Customer's unique Virtual Payment Address. + /// + [JsonPropertyName("vpa")] + public string? Vpa { get; init; } + } public record PaymentMethodDetailsPaymentRecordUsBankAccount @@ -35458,6 +36415,12 @@ public record PaymentMethodDetailsPix [JsonPropertyName("bank_transaction_id")] public string? BankTransactionId { get; init; } + /// + /// ID of the multi use Mandate generated by the PaymentIntent + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + } public record PaymentMethodDetailsPromptpay @@ -35509,6 +36472,16 @@ public record PaymentMethodDetailsSatispay } +public record PaymentMethodDetailsScalapay +{ + /// + /// The Scalapay transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsSepaDebit { /// @@ -35619,6 +36592,16 @@ public record PaymentMethodDetailsStripeAccount { } +public record PaymentMethodDetailsSunbit +{ + /// + /// The Sunbit transaction ID associated with this payment. + /// + [JsonPropertyName("transaction_id")] + public string? TransactionId { get; init; } + +} + public record PaymentMethodDetailsSwish { /// @@ -35643,6 +36626,12 @@ public record PaymentMethodDetailsSwish public record PaymentMethodDetailsTwint { + /// + /// ID of the multi use Mandate generated by the PaymentIntent + /// + [JsonPropertyName("mandate")] + public string? Mandate { get; init; } + } public record PaymentMethodDetailsUpi @@ -36240,6 +37229,10 @@ public record PaymentMethodOptionsBillie } +public record PaymentMethodOptionsBizum +{ +} + public record PaymentMethodOptionsBoleto { /// @@ -36348,7 +37341,7 @@ public record PaymentMethodOptionsCardPresent /// Controls when the funds will be captured from the customer's account. /// [JsonPropertyName("capture_method")] - public PaymentIntentTypeSpecificPaymentMethodOptionsClientCaptureMethod? CaptureMethod { get; init; } + public PaymentMethodOptionsCardPresentCaptureMethod? CaptureMethod { get; init; } /// /// Request ability to capture this payment beyond the standard [authorization validity window](https://docs.stripe.com/terminal/features/extended-authorizations#authorization-validity) @@ -36629,6 +37622,58 @@ public record PaymentMethodOptionsKrCard } +public record PaymentMethodOptionsMandateOptionsPix +{ + /// + /// Amount to be charged for future payments. + /// + [JsonPropertyName("amount")] + public int? Amount { get; init; } + + /// + /// Determines if the amount includes the IOF tax. + /// + [JsonPropertyName("amount_includes_iof")] + public AmountIncludesIof? AmountIncludesIof { get; init; } + + /// + /// Type of amount. + /// + [JsonPropertyName("amount_type")] + public AmountType? AmountType { get; init; } + + /// + /// Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. + /// + [JsonPropertyName("currency")] + public string? Currency { get; init; } + + /// + /// Date when the mandate expires and no further payments will be charged, in `YYYY-MM-DD`. + /// + [JsonPropertyName("end_date")] + public string? EndDate { get; init; } + + /// + /// Schedule at which the future payments will be charged. + /// + [JsonPropertyName("payment_schedule")] + public MandatePixPaymentSchedule? PaymentSchedule { get; init; } + + /// + /// Subscription name displayed to buyers in their bank app. + /// + [JsonPropertyName("reference")] + public string? Reference { get; init; } + + /// + /// Start date of the mandate, in `YYYY-MM-DD`. + /// + [JsonPropertyName("start_date")] + public string? StartDate { get; init; } + +} + public record PaymentMethodOptionsMandateOptionsUpi { /// @@ -36801,6 +37846,9 @@ public record PaymentMethodOptionsPix [JsonPropertyName("expires_at")] public int? ExpiresAt { get; init; } + [JsonPropertyName("mandate_options")] + public PaymentMethodOptionsMandateOptionsPix? MandateOptions { get; init; } + /// /// Indicates that you intend to make future payments with this PaymentIntent's payment method. /// @@ -36811,7 +37859,7 @@ public record PaymentMethodOptionsPix /// When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication). /// [JsonPropertyName("setup_future_usage")] - public CheckoutAffirmPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } + public CheckoutAmazonPayPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } } @@ -36863,6 +37911,16 @@ public record PaymentMethodOptionsSatispay } +public record PaymentMethodOptionsScalapay +{ + /// + /// Controls when the funds will be captured from the customer's account. + /// + [JsonPropertyName("capture_method")] + public CheckoutAffirmPaymentMethodOptionsCaptureMethod? CaptureMethod { get; init; } + +} + public record PaymentMethodOptionsSofort { /// @@ -36897,7 +37955,7 @@ public record PaymentMethodOptionsTwint /// When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication). /// [JsonPropertyName("setup_future_usage")] - public CheckoutAffirmPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } + public CheckoutAmazonPayPaymentMethodOptionsSetupFutureUsage? SetupFutureUsage { get; init; } } @@ -37062,6 +38120,10 @@ public record PaymentMethodSatispay { } +public record PaymentMethodScalapay +{ +} + public record PaymentMethodSepaDebit { /// @@ -37112,6 +38174,10 @@ public record PaymentMethodSofort } +public record PaymentMethodSunbit +{ +} + public record PaymentMethodSwish { } @@ -37466,7 +38532,7 @@ public record PaymentPagesCheckoutSessionConsentCollection /// /// If set to `auto`, enables the collection of customer consent for promotional communications. The Checkout /// Session will determine whether to display an option to opt into promotional communication - /// from the merchant depending on the customer's locale. Only available to US merchants. + /// from the merchant depending on the customer's locale. Only available to US merchants and US customers. /// [JsonPropertyName("promotions")] public PaymentLinksResourceConsentCollectionPromotions? Promotions { get; init; } @@ -37833,6 +38899,16 @@ public record PaymentPagesCheckoutSessionInvoiceSettings } +public record PaymentPagesCheckoutSessionManagedPayments +{ + /// + /// Set to `true` to enable [Managed Payments](https://docs.stripe.com/payments/managed-payments), Stripe's merchant of record solution, for this session. + /// + [JsonPropertyName("enabled")] + public required bool Enabled { get; init; } + +} + public record PaymentPagesCheckoutSessionNameCollection { [JsonPropertyName("business")] @@ -38000,7 +39076,7 @@ public record PaymentPagesCheckoutSessionShippingOption public record PaymentPagesCheckoutSessionTaxId { /// - /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` + /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` /// [JsonPropertyName("type")] public required InvoicesResourceInvoiceTaxIdType Type { get; init; } @@ -38073,7 +39149,7 @@ public record PaymentPagesCheckoutSessionTotalDetailsResourceBreakdown public record PaymentPagesPrivateCardPaymentMethodOptionsResourceRestrictions { /// - /// Specify the card brands to block in the Checkout Session. If a customer enters or selects a card belonging to a blocked brand, they can't complete the Session. + /// The card brands to block. If a customer enters or selects a card belonging to a blocked brand, they can't complete the payment. /// [JsonPropertyName("brands_blocked")] public IReadOnlyList? BrandsBlocked { get; init; } @@ -38349,6 +39425,69 @@ public record PaymentsPrimitivesPaymentRecordsResourceCustomerDetails } +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAlmaDetailsResourceInstallments +{ + /// + /// The number of installments. + /// + [JsonPropertyName("count")] + public required int Count { get; init; } + +} + +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAmazonPayDetailsResourceFunding +{ + [JsonPropertyName("card")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAmazonPayDetailsResourceFundingResourceFundingCard? Card { get; init; } + + /// + /// funding type of the underlying payment method. + /// + [JsonPropertyName("type")] + public AmazonPayUnderlyingPaymentMethodFundingDetailsType? Type { get; init; } + +} + +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodAmazonPayDetailsResourceFundingResourceFundingCard +{ + /// + /// Card brand. Can be `amex`, `cartes_bancaires`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa` or `unknown`. + /// + [JsonPropertyName("brand")] + public string? Brand { get; init; } + + /// + /// Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected. + /// + [JsonPropertyName("country")] + public string? Country { get; init; } + + /// + /// Two-digit number representing the card's expiration month. + /// + [JsonPropertyName("exp_month")] + public int? ExpMonth { get; init; } + + /// + /// Four-digit number representing the card's expiration year. + /// + [JsonPropertyName("exp_year")] + public int? ExpYear { get; init; } + + /// + /// Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. + /// + [JsonPropertyName("funding")] + public string? Funding { get; init; } + + /// + /// The last four digits of the card. + /// + [JsonPropertyName("last4")] + public string? Last4 { get; init; } + +} + /// /// Details of the card used for this payment attempt. /// @@ -38675,7 +39814,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsAchDebit? AchDebit { get; init; } [JsonPropertyName("acss_debit")] - public PaymentMethodDetailsAcssDebit? AcssDebit { get; init; } + public PaymentMethodDetailsPaymentRecordAcssDebit? AcssDebit { get; init; } [JsonPropertyName("affirm")] public PaymentMethodDetailsPaymentRecordAffirm? Affirm { get; init; } @@ -38687,10 +39826,10 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentFlowsPrivatePaymentMethodsAlipayDetails? Alipay { get; init; } [JsonPropertyName("alma")] - public PaymentMethodDetailsAlma? Alma { get; init; } + public PaymentMethodDetailsPaymentRecordAlma? Alma { get; init; } [JsonPropertyName("amazon_pay")] - public PaymentMethodDetailsAmazonPay? AmazonPay { get; init; } + public PaymentMethodDetailsPaymentRecordAmazonPay? AmazonPay { get; init; } [JsonPropertyName("au_becs_debit")] public PaymentMethodDetailsAuBecsDebit? AuBecsDebit { get; init; } @@ -38702,7 +39841,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsPaymentRecordBancontact? Bancontact { get; init; } [JsonPropertyName("billie")] - public PaymentMethodDetailsBillie? Billie { get; init; } + public PaymentMethodDetailsPaymentRecordBillie? Billie { get; init; } /// /// The billing details associated with the method of payment. @@ -38710,8 +39849,11 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails [JsonPropertyName("billing_details")] public PaymentsPrimitivesPaymentRecordsResourceBillingDetails? BillingDetails { get; init; } + [JsonPropertyName("bizum")] + public PaymentMethodDetailsPaymentRecordBizum? Bizum { get; init; } + [JsonPropertyName("blik")] - public PaymentMethodDetailsBlik? Blik { get; init; } + public PaymentMethodDetailsPaymentRecordBlik? Blik { get; init; } [JsonPropertyName("boleto")] public PaymentMethodDetailsPaymentRecordBoleto? Boleto { get; init; } @@ -38743,7 +39885,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsCustomerBalance? CustomerBalance { get; init; } [JsonPropertyName("eps")] - public PaymentMethodDetailsEps? Eps { get; init; } + public PaymentMethodDetailsPaymentRecordEps? Eps { get; init; } [JsonPropertyName("fpx")] public PaymentMethodDetailsFpx? Fpx { get; init; } @@ -38764,7 +39906,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsPaymentRecordKakaoPay? KakaoPay { get; init; } [JsonPropertyName("klarna")] - public PaymentMethodDetailsKlarna? Klarna { get; init; } + public PaymentMethodDetailsPaymentRecordKlarna? Klarna { get; init; } [JsonPropertyName("konbini")] public PaymentMethodDetailsPaymentRecordKonbini? Konbini { get; init; } @@ -38773,7 +39915,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsKrCard? KrCard { get; init; } [JsonPropertyName("link")] - public PaymentMethodDetailsLink? Link { get; init; } + public PaymentMethodDetailsPaymentRecordLink? Link { get; init; } [JsonPropertyName("mb_way")] public PaymentMethodDetailsPaymentRecordMbWay? MbWay { get; init; } @@ -38794,10 +39936,10 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsPaymentRecordOxxo? Oxxo { get; init; } [JsonPropertyName("p24")] - public PaymentMethodDetailsP24? P24 { get; init; } + public PaymentMethodDetailsPaymentRecordP24? P24 { get; init; } [JsonPropertyName("pay_by_bank")] - public PaymentMethodDetailsPayByBank? PayByBank { get; init; } + public PaymentMethodDetailsPaymentRecordPayByBank? PayByBank { get; init; } [JsonPropertyName("payco")] public PaymentMethodDetailsPaymentRecordPayco? Payco { get; init; } @@ -38815,7 +39957,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsPaypal? Paypal { get; init; } [JsonPropertyName("payto")] - public PaymentMethodDetailsPayto? Payto { get; init; } + public PaymentMethodDetailsPaymentRecordPayto? Payto { get; init; } [JsonPropertyName("pix")] public PaymentMethodDetailsPaymentRecordPix? Pix { get; init; } @@ -38824,13 +39966,16 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public PaymentMethodDetailsPaymentRecordPromptpay? Promptpay { get; init; } [JsonPropertyName("revolut_pay")] - public PaymentMethodDetailsRevolutPay? RevolutPay { get; init; } + public PaymentMethodDetailsPaymentRecordRevolutPay? RevolutPay { get; init; } [JsonPropertyName("samsung_pay")] public PaymentMethodDetailsPaymentRecordSamsungPay? SamsungPay { get; init; } [JsonPropertyName("satispay")] - public PaymentMethodDetailsSatispay? Satispay { get; init; } + public PaymentMethodDetailsPaymentRecordSatispay? Satispay { get; init; } + + [JsonPropertyName("scalapay")] + public PaymentMethodDetailsPaymentRecordScalapay? Scalapay { get; init; } [JsonPropertyName("sepa_debit")] public PaymentMethodDetailsPaymentRecordSepaDebit? SepaDebit { get; init; } @@ -38841,6 +39986,9 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails [JsonPropertyName("stripe_account")] public PaymentMethodDetailsStripeAccount? StripeAccount { get; init; } + [JsonPropertyName("sunbit")] + public PaymentMethodDetailsSunbit? Sunbit { get; init; } + [JsonPropertyName("swish")] public PaymentMethodDetailsPaymentRecordSwish? Swish { get; init; } @@ -38856,7 +40004,7 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails public required string Type { get; init; } [JsonPropertyName("upi")] - public PaymentMethodDetailsUpi? Upi { get; init; } + public PaymentMethodDetailsPaymentRecordUpi? Upi { get; init; } [JsonPropertyName("us_bank_account")] public PaymentMethodDetailsPaymentRecordUsBankAccount? UsBankAccount { get; init; } @@ -38872,6 +40020,26 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodDetails } +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodKlarnaDetailsResourcePayerDetails +{ + /// + /// The payer's address + /// + [JsonPropertyName("address")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodKlarnaDetailsResourcePayerDetailsResourcePayerDetailsAddress? Address { get; init; } + +} + +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodKlarnaDetailsResourcePayerDetailsResourcePayerDetailsAddress +{ + /// + /// The payer address country + /// + [JsonPropertyName("country")] + public string? Country { get; init; } + +} + public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodKonbiniDetailsResourceStore { /// @@ -38916,6 +40084,59 @@ public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodMobilepayDeta } +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodRevolutPayDetailsResourceFunding +{ + [JsonPropertyName("card")] + public PaymentsPrimitivesPaymentRecordsResourcePaymentMethodRevolutPayDetailsResourceFundingResourceFundingCard? Card { get; init; } + + /// + /// Funding type of the underlying payment method. + /// + [JsonPropertyName("type")] + public AmazonPayUnderlyingPaymentMethodFundingDetailsType? Type { get; init; } + +} + +public record PaymentsPrimitivesPaymentRecordsResourcePaymentMethodRevolutPayDetailsResourceFundingResourceFundingCard +{ + /// + /// Card brand. Can be `amex`, `cartes_bancaires`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa` or `unknown`. + /// + [JsonPropertyName("brand")] + public string? Brand { get; init; } + + /// + /// Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected. + /// + [JsonPropertyName("country")] + public string? Country { get; init; } + + /// + /// Two-digit number representing the card's expiration month. + /// + [JsonPropertyName("exp_month")] + public int? ExpMonth { get; init; } + + /// + /// Four-digit number representing the card's expiration year. + /// + [JsonPropertyName("exp_year")] + public int? ExpYear { get; init; } + + /// + /// Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. + /// + [JsonPropertyName("funding")] + public string? Funding { get; init; } + + /// + /// The last four digits of the card. + /// + [JsonPropertyName("last4")] + public string? Last4 { get; init; } + +} + /// /// Processor information associated with this payment. /// @@ -40679,6 +41900,12 @@ public record PromotionCodesResourceRestrictions public record ProrationDetails { + /// + /// For a credit proration, links to the debit invoice line items or invoice item that the credit applies to. + /// + [JsonPropertyName("credited_items")] + public InvoiceItemProrationCreditedItems? CreditedItems { get; init; } + /// /// Discount amounts applied when the proration was created. /// @@ -41265,7 +42492,7 @@ public record RadarPaymentEvaluation public InsightsResourcesPaymentEvaluationPaymentDetails? PaymentDetails { get; init; } /// - /// Recommended action based on the score of the fraudulent_payment signal. Possible values are `block` and `continue`. + /// Recommended action based on the score of the `fraudulent_payment` signal. Possible values are `block`, `continue` and `request_three_d_secure`. /// [JsonPropertyName("recommended_action")] public required RecommendedAction RecommendedAction { get; init; } @@ -41310,7 +42537,7 @@ public record RadarValueList public required string Id { get; init; } /// - /// The type of items in the value list. One of `card_fingerprint`, `card_bin`, `crypto_fingerprint`, `email`, `ip_address`, `country`, `string`, `case_sensitive_string`, `customer_id`, `sepa_debit_fingerprint`, or `us_bank_account_fingerprint`. + /// The type of items in the value list. One of `card_fingerprint`, `card_bin`, `crypto_fingerprint`, `email`, `ip_address`, `country`, `string`, `case_sensitive_string`, `customer_id`, `account`, `sepa_debit_fingerprint`, or `us_bank_account_fingerprint`. /// [JsonPropertyName("item_type")] public required ItemType ItemType { get; init; } @@ -41737,6 +42964,9 @@ public record RefundDestinationDetails [JsonPropertyName("revolut")] public DestinationDetailsUnimplemented? Revolut { get; init; } + [JsonPropertyName("scalapay")] + public DestinationDetailsUnimplemented? Scalapay { get; init; } + [JsonPropertyName("sofort")] public DestinationDetailsUnimplemented? Sofort { get; init; } @@ -42638,6 +43868,9 @@ public record SetupAttemptPaymentMethodDetails [JsonPropertyName("payto")] public SetupAttemptPaymentMethodDetailsPayto? Payto { get; init; } + [JsonPropertyName("pix")] + public SetupAttemptPaymentMethodDetailsPix? Pix { get; init; } + [JsonPropertyName("revolut_pay")] public SetupAttemptPaymentMethodDetailsRevolutPay? RevolutPay { get; init; } @@ -42647,6 +43880,9 @@ public record SetupAttemptPaymentMethodDetails [JsonPropertyName("sofort")] public SetupAttemptPaymentMethodDetailsSofort? Sofort { get; init; } + [JsonPropertyName("twint")] + public SetupAttemptPaymentMethodDetailsTwint? Twint { get; init; } + /// /// The type of the payment method used in the SetupIntent (e.g., `card`). An additional hash is included on `payment_method_details` with a name matching this value. It contains confirmation-specific information for the payment method. /// @@ -42944,6 +44180,10 @@ public record SetupAttemptPaymentMethodDetailsPayto { } +public record SetupAttemptPaymentMethodDetailsPix +{ +} + public record SetupAttemptPaymentMethodDetailsRevolutPay { } @@ -43006,6 +44246,10 @@ public record SetupAttemptPaymentMethodDetailsSofort } +public record SetupAttemptPaymentMethodDetailsTwint +{ +} + public record SetupAttemptPaymentMethodDetailsUpi { } @@ -43139,6 +44383,9 @@ public record SetupIntent [JsonPropertyName("livemode")] public required bool Livemode { get; init; } + [JsonPropertyName("managed_payments")] + public SmorResourceManagedPayments? ManagedPayments { get; init; } + /// /// ID of the multi use Mandate generated by the SetupIntent. /// @@ -43217,9 +44464,15 @@ public record SetupIntent public record SetupIntentNextAction { + [JsonPropertyName("blik_authorize")] + public PaymentIntentNextActionBlikAuthorize? BlikAuthorize { get; init; } + [JsonPropertyName("cashapp_handle_redirect_or_display_qr_code")] public PaymentIntentNextActionCashappHandleRedirectOrDisplayQrCode? CashappHandleRedirectOrDisplayQrCode { get; init; } + [JsonPropertyName("pix_display_qr_code")] + public SetupIntentNextActionPixDisplayQrCode? PixDisplayQrCode { get; init; } + [JsonPropertyName("redirect_to_url")] public SetupIntentNextActionRedirectToUrl? RedirectToUrl { get; init; } @@ -43243,6 +44496,40 @@ public record SetupIntentNextAction } +public record SetupIntentNextActionPixDisplayQrCode +{ + /// + /// The raw data string used to generate QR code, it should be used together with QR code library. + /// + [JsonPropertyName("data")] + public required string Data { get; init; } + + /// + /// The date (unix timestamp) when the PIX expires. + /// + [JsonPropertyName("expires_at")] + public required int ExpiresAt { get; init; } + + /// + /// The URL to the hosted pix instructions page, which allows customers to view the pix QR code. + /// + [JsonPropertyName("hosted_instructions_url")] + public required string HostedInstructionsUrl { get; init; } + + /// + /// The image_url_png string used to render png QR code + /// + [JsonPropertyName("image_url_png")] + public required string ImageUrlPng { get; init; } + + /// + /// The image_url_svg string used to render svg QR code + /// + [JsonPropertyName("image_url_svg")] + public required string ImageUrlSvg { get; init; } + +} + public record SetupIntentNextActionRedirectToUrl { /// @@ -43292,6 +44579,9 @@ public record SetupIntentPaymentMethodOptions [JsonPropertyName("bacs_debit")] public object? BacsDebit { get; init; } + [JsonPropertyName("bizum")] + public object? Bizum { get; init; } + [JsonPropertyName("card")] public object? Card { get; init; } @@ -43310,6 +44600,9 @@ public record SetupIntentPaymentMethodOptions [JsonPropertyName("payto")] public object? Payto { get; init; } + [JsonPropertyName("pix")] + public object? Pix { get; init; } + [JsonPropertyName("sepa_debit")] public object? SepaDebit { get; init; } @@ -43351,6 +44644,10 @@ public record SetupIntentPaymentMethodOptionsBacsDebit } +public record SetupIntentPaymentMethodOptionsBizum +{ +} + public record SetupIntentPaymentMethodOptionsCard { /// @@ -43578,6 +44875,13 @@ public record SetupIntentPaymentMethodOptionsPayto } +public record SetupIntentPaymentMethodOptionsPix +{ + [JsonPropertyName("mandate_options")] + public PaymentMethodOptionsMandateOptionsPix? MandateOptions { get; init; } + +} + public record SetupIntentPaymentMethodOptionsSepaDebit { [JsonPropertyName("mandate_options")] @@ -43852,6 +45156,16 @@ public record SigmaScheduledQueryRunError } +public record SmorResourceManagedPayments +{ + /// + /// Set to `true` to enable [Managed Payments](https://docs.stripe.com/payments/managed-payments), Stripe's merchant of record solution, for this session. + /// + [JsonPropertyName("enabled")] + public required bool Enabled { get; init; } + +} + /// /// `Source` objects allow you to accept a variety of payment methods. They /// represent a customer's payment instrument, and can be used with the Stripe API @@ -45203,6 +46517,12 @@ public record Subscription [JsonPropertyName("billing_mode")] public required SubscriptionsResourceBillingMode BillingMode { get; init; } + /// + /// Billing schedules for this subscription. + /// + [JsonPropertyName("billing_schedules")] + public required IReadOnlyList BillingSchedules { get; init; } + /// /// Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period /// @@ -45332,6 +46652,12 @@ public record Subscription [JsonPropertyName("livemode")] public required bool Livemode { get; init; } + /// + /// Settings for Managed Payments for this Subscription and resulting [Invoices](/api/invoices/object) and [PaymentIntents](/api/payment_intents/object). + /// + [JsonPropertyName("managed_payments")] + public SmorResourceManagedPayments? ManagedPayments { get; init; } + /// /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. /// @@ -45493,6 +46819,12 @@ public record SubscriptionBillingThresholds /// public record SubscriptionItem { + /// + /// The time period the subscription item has been billed for. + /// + [JsonPropertyName("billed_until")] + public int? BilledUntil { get; init; } + /// /// Define thresholds at which an invoice will be sent, and the related subscription advanced to a new billing period /// @@ -45601,6 +46933,47 @@ public record SubscriptionPaymentMethodOptionsCard } +public record SubscriptionPaymentMethodOptionsMandateOptionsPix +{ + /// + /// Amount to be charged for future payments. + /// + [JsonPropertyName("amount")] + public int? Amount { get; init; } + + /// + /// Determines if the amount includes the IOF tax. + /// + [JsonPropertyName("amount_includes_iof")] + public AmountIncludesIof? AmountIncludesIof { get; init; } + + /// + /// Date when the mandate expires and no further payments will be charged, in `YYYY-MM-DD`. + /// + [JsonPropertyName("end_date")] + public string? EndDate { get; init; } + + /// + /// Schedule at which the future payments will be charged. + /// + [JsonPropertyName("payment_schedule")] + public MandatePixPaymentSchedule? PaymentSchedule { get; init; } + +} + +public record SubscriptionPaymentMethodOptionsPix +{ + /// + /// The number of seconds (between 10 and 1209600) after which Pix payment will expire. Defaults to 86400 seconds. + /// + [JsonPropertyName("expires_after_seconds")] + public int? ExpiresAfterSeconds { get; init; } + + [JsonPropertyName("mandate_options")] + public SubscriptionPaymentMethodOptionsMandateOptionsPix? MandateOptions { get; init; } + +} + public record SubscriptionPendingInvoiceItemInterval { /// @@ -45748,6 +47121,12 @@ public record SubscriptionSchedule /// public record SubscriptionScheduleAddInvoiceItem { + /// + /// Controls whether discounts apply to this invoice item. Defaults to true if no value is provided. + /// + [JsonPropertyName("discountable")] + public bool? Discountable { get; init; } + /// /// The stackable discounts that will be applied to the item. /// @@ -46173,6 +47552,100 @@ public record SubscriptionsResourceBillingModeFlexible } +/// +/// Sets the billing schedule for the subscription. +/// +public record SubscriptionsResourceBillingSchedules +{ + /// + /// Specifies which subscription items the billing schedule applies to. + /// + [JsonPropertyName("applies_to")] + public IReadOnlyList? AppliesTo { get; init; } + + /// + /// Specifies the end of billing period. + /// + [JsonPropertyName("bill_until")] + public required SubscriptionsResourceBillingSchedulesBillUntil BillUntil { get; init; } + + /// + /// Unique identifier for the billing schedule. + /// + [JsonPropertyName("key")] + public required string Key { get; init; } + +} + +/// +/// Represents the entities that the billing schedule applies to. +/// +public record SubscriptionsResourceBillingSchedulesAppliesTo +{ + /// + /// The billing schedule will apply to the subscription item with the given price ID. + /// + [JsonPropertyName("price")] + public object? Price { get; init; } + + /// + /// Controls which subscription items the billing schedule applies to. + /// + [JsonPropertyName("type")] + public required SubscriptionsResourceBillingSchedulesAppliesToType Type { get; init; } + +} + +/// +/// Specifies the end of billing period. +/// +public record SubscriptionsResourceBillingSchedulesBillUntil +{ + /// + /// The timestamp the billing schedule will apply until. + /// + [JsonPropertyName("computed_timestamp")] + public required int ComputedTimestamp { get; init; } + + /// + /// Specifies the billing period. + /// + [JsonPropertyName("duration")] + public SubscriptionsResourceBillingSchedulesBillUntilDuration? Duration { get; init; } + + /// + /// If specified, the billing schedule will apply until the specified timestamp. + /// + [JsonPropertyName("timestamp")] + public int? Timestamp { get; init; } + + /// + /// Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`. + /// + [JsonPropertyName("type")] + public required SubscriptionsResourceBillingSchedulesBillUntilType Type { get; init; } + +} + +/// +/// Configures the `bill_until` date based on the provided `interval` and `interval_count`. +/// +public record SubscriptionsResourceBillingSchedulesBillUntilDuration +{ + /// + /// Specifies billing duration. Either `day`, `week`, `month` or `year`. + /// + [JsonPropertyName("interval")] + public required PlanInterval Interval { get; init; } + + /// + /// The multiplier applied to the interval. + /// + [JsonPropertyName("interval_count")] + public int? IntervalCount { get; init; } + +} + /// /// The Pause Collection settings determine how we will pause collection for this subscription and for how long the subscription /// should be paused. @@ -46231,12 +47704,24 @@ public record SubscriptionsResourcePaymentMethodOptions [JsonPropertyName("payto")] public InvoicePaymentMethodOptionsPayto? Payto { get; init; } + /// + /// This sub-hash contains details about the Pix payment method options to pass to invoices created by the subscription. + /// + [JsonPropertyName("pix")] + public SubscriptionPaymentMethodOptionsPix? Pix { get; init; } + /// /// This sub-hash contains details about the SEPA Direct Debit payment method options to pass to invoices created by the subscription. /// [JsonPropertyName("sepa_debit")] public InvoicePaymentMethodOptionsSepaDebit? SepaDebit { get; init; } + /// + /// This sub-hash contains details about the UPI payment method options to pass to invoices created by the subscription. + /// + [JsonPropertyName("upi")] + public InvoicePaymentMethodOptionsUpi? Upi { get; init; } + /// /// This sub-hash contains details about the ACH direct debit payment method options to pass to invoices created by the subscription. /// @@ -46279,12 +47764,30 @@ public record SubscriptionsResourcePendingUpdate [JsonPropertyName("billing_cycle_anchor")] public int? BillingCycleAnchor { get; init; } + /// + /// The pending subscription-level discount that will be applied when the pending update is applied. + /// + [JsonPropertyName("discount")] + public Discount? Discount { get; init; } + + /// + /// The discounts that will be applied to the subscription when the pending update is applied. Use `expand[]=discounts` to expand each discount. + /// + [JsonPropertyName("discounts")] + public IReadOnlyList? Discounts { get; init; } + /// /// The point after which the changes reflected by this update will be discarded and no longer applied. /// [JsonPropertyName("expires_at")] public required int ExpiresAt { get; init; } + /// + /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. + /// + [JsonPropertyName("metadata")] + public IReadOnlyDictionary? Metadata { get; init; } + /// /// List of subscription items, each with an attached plan, that will be set if the update is applied. /// @@ -46506,7 +48009,7 @@ public record TaxCalculation public required IReadOnlyList TaxBreakdown { get; init; } /// - /// Timestamp of date at which the tax rules and rates in effect applies for the calculation. + /// The calculation uses the tax rules and rates that are in effect at this timestamp. You can use a date up to 31 days in the past or up to 31 days in the future. If you use a future date, Stripe doesn't guarantee that the expected tax rules and rate being used match the actual rules and rate that will be in effect on that date. We deploy tax changes before their effective date, but not within a fixed window. /// [JsonPropertyName("tax_date")] public required int TaxDate { get; init; } @@ -46779,7 +48282,7 @@ public record TaxTransaction public TaxProductResourceTaxTransactionShippingCost? ShippingCost { get; init; } /// - /// Timestamp of date at which the tax rules and rates in effect applies for the calculation. + /// The calculation uses the tax rules and rates that are in effect at this timestamp. You can use a date up to 31 days in the past or up to 31 days in the future. If you use a future date, Stripe doesn't guarantee that the expected tax rules and rate being used match the actual rules and rate that will be in effect on that date. We deploy tax changes before their effective date, but not within a fixed window. /// [JsonPropertyName("tax_date")] public required int TaxDate { get; init; } @@ -47030,7 +48533,7 @@ public record TaxId public TaxIDsOwner? Owner { get; init; } /// - /// Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `aw_tin`, `az_tin`, `ba_tin`, `bb_tin`, `bd_bin`, `bf_ifu`, `bg_uic`, `bh_vat`, `bj_ifu`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cm_niu`, `cn_tin`, `co_nit`, `cr_tin`, `cv_nif`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `et_tin`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kg_tin`, `kh_tin`, `kr_brn`, `kz_bin`, `la_tin`, `li_uid`, `li_vat`, `lk_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `pl_nip`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`. Note that some legacy tax IDs have type `unknown` + /// Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `aw_tin`, `az_tin`, `ba_tin`, `bb_tin`, `bd_bin`, `bf_ifu`, `bg_uic`, `bh_vat`, `bj_ifu`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cm_niu`, `cn_tin`, `co_nit`, `cr_tin`, `cv_nif`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `et_tin`, `eu_oss_vat`, `eu_vat`, `fo_vat`, `gb_vat`, `ge_vat`, `gi_tin`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `it_cf`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kg_tin`, `kh_tin`, `kr_brn`, `kz_bin`, `la_tin`, `li_uid`, `li_vat`, `lk_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `pl_nip`, `py_ruc`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`. Note that some legacy tax IDs have type `unknown` /// [JsonPropertyName("type")] public required InvoicesResourceInvoiceTaxIdType Type { get; init; } @@ -47585,7 +49088,7 @@ public record TaxProductResourceCustomerDetails public record TaxProductResourceCustomerDetailsResourceTaxId { /// - /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` + /// The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `pl_nip`, `it_cf`, `fo_vat`, `gi_tin`, `py_ruc`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `lk_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown` /// [JsonPropertyName("type")] public required InvoicesResourceInvoiceTaxIdType Type { get; init; } @@ -48190,9 +49693,21 @@ public record TerminalConfiguration [JsonPropertyName("tipping")] public TerminalConfigurationConfigurationResourceTipping? Tipping { get; init; } + [JsonPropertyName("verifone_m425")] + public TerminalConfigurationConfigurationResourceDeviceTypeSpecificConfig? VerifoneM425 { get; init; } + [JsonPropertyName("verifone_p400")] public TerminalConfigurationConfigurationResourceDeviceTypeSpecificConfig? VerifoneP400 { get; init; } + [JsonPropertyName("verifone_p630")] + public TerminalConfigurationConfigurationResourceDeviceTypeSpecificConfig? VerifoneP630 { get; init; } + + [JsonPropertyName("verifone_ux700")] + public TerminalConfigurationConfigurationResourceDeviceTypeSpecificConfig? VerifoneUx700 { get; init; } + + [JsonPropertyName("verifone_v660p")] + public TerminalConfigurationConfigurationResourceDeviceTypeSpecificConfig? VerifoneV660p { get; init; } + [JsonPropertyName("wifi")] public TerminalConfigurationConfigurationResourceWifiConfig? Wifi { get; init; } @@ -48894,6 +50409,37 @@ public record TerminalReaderReaderResourceEmail } +/// +/// Metadata of an uploaded file +/// +public record TerminalReaderReaderResourceFileMetadata +{ + /// + /// Creation time of the object (in seconds since the Unix epoch). + /// + [JsonPropertyName("created_at")] + public required int CreatedAt { get; init; } + + /// + /// The original name of the uploaded file (e.g. `receipt.png`). + /// + [JsonPropertyName("filename")] + public required string Filename { get; init; } + + /// + /// The size (in bytes) of the uploaded file. + /// + [JsonPropertyName("size")] + public required int Size { get; init; } + + /// + /// The format of the uploaded file. + /// + [JsonPropertyName("type")] + public required string Type { get; init; } + +} + /// /// Represents an input to be collected using the reader /// @@ -49018,6 +50564,25 @@ public record TerminalReaderReaderResourcePhone } +/// +/// Represents a reader action to print content +/// +public record TerminalReaderReaderResourcePrintContent +{ + /// + /// Metadata of an uploaded file + /// + [JsonPropertyName("image")] + public TerminalReaderReaderResourceFileMetadata? Image { get; init; } + + /// + /// The type of content to print. Currently supports `image`. + /// + [JsonPropertyName("type")] + public required TerminalReaderReaderResourcePrintContentType Type { get; init; } + +} + /// /// Represents a per-transaction override of a reader configuration /// @@ -49111,6 +50676,12 @@ public record TerminalReaderReaderResourceProcessSetupIntentAction /// public record TerminalReaderReaderResourceReaderAction { + /// + /// The reader action failed due to an [API error](https://docs.stripe.com/api/errors). Only present when `status` is `failed` and the underlying failure was an API error. Avoid parsing the `message` field for programmatic logic; use `type` or `code` instead. The `message` field is for display to humans only and may be updated at anytime. Requires [reader version](https://docs.stripe.com/terminal/readers/stripe-reader-s700-s710#reader-software-version) 2.42 or later. Readers on older versions always return null. + /// + [JsonPropertyName("api_error")] + public ApiErrors? ApiError { get; init; } + /// /// Represents a reader action to collect customer inputs /// @@ -49141,6 +50712,12 @@ public record TerminalReaderReaderResourceReaderAction [JsonPropertyName("failure_message")] public string? FailureMessage { get; init; } + /// + /// Represents a reader action to print content + /// + [JsonPropertyName("print_content")] + public TerminalReaderReaderResourcePrintContent? PrintContent { get; init; } + /// /// Represents a reader action to process a payment intent /// @@ -49917,12 +51494,27 @@ public record TransferData [JsonPropertyName("amount")] public int? Amount { get; init; } + /// + /// An arbitrary string attached to the transfer. Often useful for displaying to users. + /// + [JsonPropertyName("description")] + public string? Description { get; init; } + /// /// The account (if any) that the payment is attributed to for tax reporting, and where funds from the payment are transferred to after payment success. /// [JsonPropertyName("destination")] public required object Destination { get; init; } + /// + /// Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. + /// + [JsonPropertyName("metadata")] + public IReadOnlyDictionary? Metadata { get; init; } + + [JsonPropertyName("payment_data")] + public PaymentData? PaymentData { get; init; } + } /// diff --git a/package.json b/package.json index c8da3a7..250184e 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,6 @@ "check": "biome check --write" }, "devDependencies": { - "@biomejs/biome": "2.4.15" + "@biomejs/biome": "2.4.16" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bbb7b75..6a0f312 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -22,38 +22,32 @@ importers: .: devDependencies: '@biomejs/biome': - specifier: 2.4.15 - version: 2.4.15 + specifier: 2.4.16 + version: 2.4.16 docs: dependencies: '@astrojs/starlight': - specifier: 0.39.2 - version: 0.39.2(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0)) + specifier: 0.39.3 + version: 0.39.3(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0)) astro: - specifier: 6.3.3 - version: 6.3.3(@types/node@24.12.0)(rollup@4.59.0) + specifier: 6.3.8 + version: 6.3.8(@types/node@24.12.0)(rollup@4.59.0) sharp: specifier: 0.34.5 version: 0.34.5 vite: - specifier: 7.3.3 - version: 7.3.3(@types/node@24.12.0) + specifier: 7.3.5 + version: 7.3.5(@types/node@24.12.0) packages: '@astrojs/compiler@4.0.0': resolution: {integrity: sha512-eouss7G8ygdZqHuke033VMcVw5HTZUu+PXd/h06DGDUg/jt5btPYPqh66ENWw/mU78rBrf/oeC4oqoBwMtDMNA==} - '@astrojs/internal-helpers@0.9.0': - resolution: {integrity: sha512-GdYkzR26re8izmyYlBqf4z2s7zNngmWLFuxw0UKiPNqHraZGS6GKWIwSHgS22RDlu2ePFJ8bzmpBcUszut/SDg==} - '@astrojs/internal-helpers@0.9.1': resolution: {integrity: sha512-1pWuARqYom/TzuU3+0ZugsTrKlUydWKuULmDqSMTuonY+9IRDUEGKX/8PXQ1nBxRq3w85uGtd9q9SXfqEldMIQ==} - '@astrojs/markdown-remark@7.1.1': - resolution: {integrity: sha512-C6e9BnLGlbdv6bV8MYGeHpHxsUHrCrB4OuRLqi5LI7oiBVcBcqfUN06zpwFQdHgV48QCCrMmLpyqBr7VqC+swA==} - '@astrojs/markdown-remark@7.1.2': resolution: {integrity: sha512-caXZ4Dc2St2dW8luEg22GlP0gupLdztCTQE4EzZOxW1pqWXz9mbeJEuHUkgDYcKWW8tjIHkydYDhWLVoxJ327Q==} @@ -63,10 +57,6 @@ packages: peerDependencies: astro: ^6.0.0 - '@astrojs/prism@4.0.1': - resolution: {integrity: sha512-nksZQVjlferuWzhPsBpQ1JE5XuKAf1id1/9Hj4a9KG4+ofrlzxUUwX4YGQF/SuDiuiGKEnzopGOt38F3AnVWsQ==} - engines: {node: '>=22.12.0'} - '@astrojs/prism@4.0.2': resolution: {integrity: sha512-KTivpmnz6lDsC6o9H4+DNm2SrE/GHzw8cNAvEJwAvUT+eoaEnn/4NtbDNfRRaxaJHdp15gf+tfHAWiXR4wB3BA==} engines: {node: '>=22.12.0'} @@ -74,8 +64,8 @@ packages: '@astrojs/sitemap@3.7.2': resolution: {integrity: sha512-PqkzkcZTb5ICiyIR8VoKbIAP/laNRXi5tw616N1Ckk+40oNB8Can1AzVV56lrbC5GKSZFCyJYUVYqVivMisvpA==} - '@astrojs/starlight@0.39.2': - resolution: {integrity: sha512-vlw+bwnjtf5buCTUtLU7JfV6D3knslxqnspr6LKs6hfRuFZiyr5hT44F7GyDqR9FKANUqFxnIzWM81F1k/kOUA==} + '@astrojs/starlight@0.39.3': + resolution: {integrity: sha512-uvAweA2DwhmLgFVfBT9NqG38Ey14k1ck3+y78XNJbceT1pMdzxCCX69RoBajb1QzTJviufsXzSc1xswgRxJfig==} peerDependencies: astro: ^6.0.0 @@ -100,59 +90,59 @@ packages: resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} - '@biomejs/biome@2.4.15': - resolution: {integrity: sha512-j5VH3a/h/HXTKBM50MDMxRCzkeLv9S2XJcW2WgnZT1+xyisi+0bISrXR82gCX+8S9lvK0skEvHJRN+3Ktr2hlw==} + '@biomejs/biome@2.4.16': + resolution: {integrity: sha512-x9ajFh1zChVybCiM3TN6OD4phAqLgtPZjFrZF+aTMYCPjwBO+k529TX7PPsAqtGNLeV4UgzwQnowEgS7bGmzcA==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@2.4.15': - resolution: {integrity: sha512-rF3PPqLq1yoST79zaQbDjVJwsuIeci/O+9bgNmC5QpgOqz6aqYuzA4abyAGx+mgyiDXn4A049xAN8gijbuR1Qg==} + '@biomejs/cli-darwin-arm64@2.4.16': + resolution: {integrity: sha512-wxPvu4XOA85YJk9ixSWUmq/QBHbid85BISbOAqqBM/5xQpPk9ayjk5375tOlSC0BeCwNSbPFafQBm+vBumXq0A==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@2.4.15': - resolution: {integrity: sha512-/5KHXYMfSJs1fNXiX30xFtI8JcCFV6zaVVLxOa0M2sfqBKHkpQhRTv94yxQWxeTY2lzo2OuTlNvPC+hDQt2wcQ==} + '@biomejs/cli-darwin-x64@2.4.16': + resolution: {integrity: sha512-xFCqGPwYusQJp4N4NJLi1XJiZqjwFdjhT+KqtNy+Ug3qgfczqnTa6MSDvxJF6TkuDLoYJItMapz6tAf7kCekFw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@2.4.15': - resolution: {integrity: sha512-ZPcxznxm0pogHBLZhYntyR3sR+MrZjqJIKEr7ZqVen0Rl+P/4upVmfYXjftizi9RoqZntg33fv/1fbdhbYXpEQ==} + '@biomejs/cli-linux-arm64-musl@2.4.16': + resolution: {integrity: sha512-oYxnW0ARfJkr72ezzF2OR8N/rtkgLUQeYtF8cFhVswbknHxtTcmzSsanVJP8yQKnGpGpc2ck6c5zLvHahL6Cbg==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] libc: [musl] - '@biomejs/cli-linux-arm64@2.4.15': - resolution: {integrity: sha512-owaAMZD/T4LrD0ELNCk0Km3qrRHuM0X6EAyVE1FSqGY0rbLoiDLrO4Us2tllm6cAeB2Ioa9C2C08NZPdr8+0Ug==} + '@biomejs/cli-linux-arm64@2.4.16': + resolution: {integrity: sha512-2kFb4//jxfZaP6D+Rj5VkHkxgyD9EoRAVBEQb8PKRv+s4NO2zYNJKXFaJmK1CmhufJOWEfpHKaRbOja7qjmdhQ==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] libc: [glibc] - '@biomejs/cli-linux-x64-musl@2.4.15': - resolution: {integrity: sha512-CNq/9W38SYSH023lfcQ4KKU8K0YX8T//FZUhcgtMMRABDojx5XsMV7jlweAvGSl389wJQB29Qo6Zb/a+jdvt+w==} + '@biomejs/cli-linux-x64-musl@2.4.16': + resolution: {integrity: sha512-iHDS+MCM65DPqWGu+ECC3uoALyj2H7F4nVUPxIPjz/PIl94EUu+EDfGZDzFP+NY1EOPVt9NQvwFqq7HdMmowdg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] libc: [musl] - '@biomejs/cli-linux-x64@2.4.15': - resolution: {integrity: sha512-0jj7THz12GbUOLmMibktK6DZjqz2zV64KFxyBtcFTKPiiOIY0a7vns1elpO1dERvxpsZ5ik0oFfz0oGwFde1+g==} + '@biomejs/cli-linux-x64@2.4.16': + resolution: {integrity: sha512-NbcBbi/nJqn5baae6wqRXdS7Gadf2uRpehSh6vMSYpG8OhkXl/Xg8aorWrJ+9VWqAT5ml90alLvorkpMW0nBwQ==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] libc: [glibc] - '@biomejs/cli-win32-arm64@2.4.15': - resolution: {integrity: sha512-ouhkYdlhp/1GghEJPdWwD/Vi3gQ1nFxuSpMolWsbq3Lsq3QUR4jl6UdhhscdCugKU5vOEuMiJhvKj66O0OCq+w==} + '@biomejs/cli-win32-arm64@2.4.16': + resolution: {integrity: sha512-0rgImMsNb5v/chhkIFe3wu7PEFClS6RBAYUijGL9UsYN3PanSaoK24HSSuSJb1pYbYYVjzAyZTl3gtjJ84BM8A==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@2.4.15': - resolution: {integrity: sha512-zBrGq5mx5wwpnow4+2BxUvleDM+GNd4sLbPaMapsSLQLD0NGRCquqPBTgN+7XkUteHvj7M+BstuI8tmnV7+HgQ==} + '@biomejs/cli-win32-x64@2.4.16': + resolution: {integrity: sha512-Kp85jgoBHa05gix6UIRjfCDiUV3w/8VIdZ247VyyO2gEjaw12WEVhdIjlxp/AMzXxqxQwbxNTDVZ3Mwd2RG5rw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -504,36 +494,41 @@ packages: '@oslojs/encoding@1.1.0': resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==} - '@pagefind/darwin-arm64@1.4.0': - resolution: {integrity: sha512-2vMqkbv3lbx1Awea90gTaBsvpzgRs7MuSgKDxW0m9oV1GPZCZbZBJg/qL83GIUEN2BFlY46dtUZi54pwH+/pTQ==} + '@pagefind/darwin-arm64@1.5.2': + resolution: {integrity: sha512-MXpI+7HsAdPkvJ0gk9xj9g541BCqBZOBbdwj9g6lB5LCj6kSV6nqDSjzcAJwvOsfu0fjwvC8hQU+ecfhp+MpiQ==} cpu: [arm64] os: [darwin] - '@pagefind/darwin-x64@1.4.0': - resolution: {integrity: sha512-e7JPIS6L9/cJfow+/IAqknsGqEPjJnVXGjpGm25bnq+NPdoD3c/7fAwr1OXkG4Ocjx6ZGSCijXEV4ryMcH2E3A==} + '@pagefind/darwin-x64@1.5.2': + resolution: {integrity: sha512-IojxFWMEJe0RQ7PQ3KXQsPIImNsbpPYpoZ+QUDrL8fAl/O27IX+LVLs74/UzEZy5uA2LD8Nz1AiwKr72vrkZQw==} cpu: [x64] os: [darwin] '@pagefind/default-ui@1.4.0': resolution: {integrity: sha512-wie82VWn3cnGEdIjh4YwNESyS1G6vRHwL6cNjy9CFgNnWW/PGRjsLq300xjVH5sfPFK3iK36UxvIBymtQIEiSQ==} - '@pagefind/freebsd-x64@1.4.0': - resolution: {integrity: sha512-WcJVypXSZ+9HpiqZjFXMUobfFfZZ6NzIYtkhQ9eOhZrQpeY5uQFqNWLCk7w9RkMUwBv1HAMDW3YJQl/8OqsV0Q==} + '@pagefind/freebsd-x64@1.5.2': + resolution: {integrity: sha512-7EVzo9+0w+2cbe671BtMj10UlNo83I+HrLVLfRxO731svHRJKUfJ/mo05gU14pe9PCfpKNQT8FS3Xc/oDN6pOA==} cpu: [x64] os: [freebsd] - '@pagefind/linux-arm64@1.4.0': - resolution: {integrity: sha512-PIt8dkqt4W06KGmQjONw7EZbhDF+uXI7i0XtRLN1vjCUxM9vGPdtJc2mUyVPevjomrGz5M86M8bqTr6cgDp1Uw==} + '@pagefind/linux-arm64@1.5.2': + resolution: {integrity: sha512-Ovt9+K35sqzn8H3ZMXGwls4TD/wMJuvRtShHIsmUQREmaxjrDEX7gHckRCrwYJ4XE1H1p6HkLz3wukrAnsfXQw==} cpu: [arm64] os: [linux] - '@pagefind/linux-x64@1.4.0': - resolution: {integrity: sha512-z4oddcWwQ0UHrTHR8psLnVlz6USGJ/eOlDPTDYZ4cI8TK8PgwRUPQZp9D2iJPNIPcS6Qx/E4TebjuGJOyK8Mmg==} + '@pagefind/linux-x64@1.5.2': + resolution: {integrity: sha512-V+tFqHKXhQKq/WqPBD67AFy7scn1/aZID00ws4fSDd+1daSi5UHR9VVlRrOUYKxn3VuFQYRD7lYXdZK1WED1YA==} cpu: [x64] os: [linux] - '@pagefind/windows-x64@1.4.0': - resolution: {integrity: sha512-NkT+YAdgS2FPCn8mIA9bQhiBs+xmniMGq1LFPDhcFn0+2yIUEiIG06t7bsZlhdjknEQRTSdT7YitP6fC5qwP0g==} + '@pagefind/windows-arm64@1.5.2': + resolution: {integrity: sha512-hN9Nh90fNW61nNRCW9ZyQrAj/mD0eRvmJ8NlTUzkbuW8kIzGJUi3cxjFkEcMZ5h/8FsKWD/VcouZl4yo1F7B6g==} + cpu: [arm64] + os: [win32] + + '@pagefind/windows-x64@1.5.2': + resolution: {integrity: sha512-Fa2Iyw7kaDRzGMfNYNUXNW2zbL5FQVDgSOcbDHdzBrDEdpqOqg8TcZ68F22ol6NJ9IGzvUdmeyZypLW5dyhqsg==} cpu: [x64] os: [win32] @@ -794,8 +789,8 @@ packages: peerDependencies: astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0 || ^6.0.0-beta - astro@6.3.3: - resolution: {integrity: sha512-wvLIZQYbBZt6U8gyflBW4SLBypaqdwLZUH93rT3oT53cmQ0bTGubvMAGjqBRoheOYzYcTJZtW6czztzbu4kQ5g==} + astro@6.3.8: + resolution: {integrity: sha512-xH2UA8Z17IS+JaqSlSkBor7jO6gd7zXTLdmu06nKpfpDDJFbi/7KZEy3NDmWxmier+6XrCZ9Z4aitO8jhC9oiA==} engines: {node: '>=22.12.0', npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true @@ -1426,8 +1421,8 @@ packages: package-manager-detector@1.6.0: resolution: {integrity: sha512-61A5ThoTiDG/C8s8UMZwSorAGwMJ0ERVGj2OjoW5pAalsNOg15+iQiPzrLJ4jhZ1HJzmC2PIHT2oEiH3R5fzNA==} - pagefind@1.4.0: - resolution: {integrity: sha512-z2kY1mQlL4J8q5EIsQkLzQjilovKzfNVhX8De6oyE6uHpfFtyBaqUpcl/XzJC/4fjD8vBDyh1zolimIcVrCn9g==} + pagefind@1.5.2: + resolution: {integrity: sha512-XTUaK0hXMCu2jszWE584JGQT7y284TmMV9l/HX3rnG5uo3rHI/uHU56XTyyyPFjeWEBxECbAi0CaFDJOONtG0Q==} hasBin: true parse-entities@4.0.2: @@ -1766,8 +1761,8 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite@7.3.2: - resolution: {integrity: sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg==} + vite@7.3.3: + resolution: {integrity: sha512-/4XH147Ui7OGTjg3HbdWe5arnZQSbfuRzdr9Ec7TQi5I7R+ir0Rlc9GIvD4v0XZurELqA035KVXJXpR61xhiTA==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -1806,8 +1801,8 @@ packages: yaml: optional: true - vite@7.3.3: - resolution: {integrity: sha512-/4XH147Ui7OGTjg3HbdWe5arnZQSbfuRzdr9Ec7TQi5I7R+ir0Rlc9GIvD4v0XZurELqA035KVXJXpR61xhiTA==} + vite@7.3.5: + resolution: {integrity: sha512-KuOaNhcnGFN2zIPGA7wRmzF+lJA1sea7rHq17aiJ++9lzY1WWG6Jpwqwe1KNbRVPIqHmr8GLYx7jbrQcN/7/ww==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -1882,40 +1877,10 @@ snapshots: '@astrojs/compiler@4.0.0': {} - '@astrojs/internal-helpers@0.9.0': - dependencies: - picomatch: 4.0.4 - '@astrojs/internal-helpers@0.9.1': dependencies: picomatch: 4.0.4 - '@astrojs/markdown-remark@7.1.1': - dependencies: - '@astrojs/internal-helpers': 0.9.0 - '@astrojs/prism': 4.0.1 - github-slugger: 2.0.0 - hast-util-from-html: 2.0.3 - hast-util-to-text: 4.0.2 - js-yaml: 4.1.1 - mdast-util-definitions: 6.0.0 - rehype-raw: 7.0.0 - rehype-stringify: 10.0.1 - remark-gfm: 4.0.1 - remark-parse: 11.0.0 - remark-rehype: 11.1.2 - remark-smartypants: 3.0.2 - retext-smartypants: 6.2.0 - shiki: 4.0.2 - smol-toml: 1.6.1 - unified: 11.0.5 - unist-util-remove-position: 5.0.0 - unist-util-visit: 5.1.0 - unist-util-visit-parents: 6.0.2 - vfile: 6.0.3 - transitivePeerDependencies: - - supports-color - '@astrojs/markdown-remark@7.1.2': dependencies: '@astrojs/internal-helpers': 0.9.1 @@ -1942,12 +1907,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@5.0.6(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0))': + '@astrojs/mdx@5.0.6(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0))': dependencies: '@astrojs/markdown-remark': 7.1.2 '@mdx-js/mdx': 3.1.1 acorn: 8.16.0 - astro: 6.3.3(@types/node@24.12.0)(rollup@4.59.0) + astro: 6.3.8(@types/node@24.12.0)(rollup@4.59.0) es-module-lexer: 2.0.0 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.5 @@ -1961,10 +1926,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/prism@4.0.1': - dependencies: - prismjs: 1.30.0 - '@astrojs/prism@4.0.2': dependencies: prismjs: 1.30.0 @@ -1975,17 +1936,17 @@ snapshots: stream-replace-string: 2.0.0 zod: 4.3.6 - '@astrojs/starlight@0.39.2(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0))': + '@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0))': dependencies: - '@astrojs/markdown-remark': 7.1.1 - '@astrojs/mdx': 5.0.6(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0)) + '@astrojs/markdown-remark': 7.1.2 + '@astrojs/mdx': 5.0.6(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0)) '@astrojs/sitemap': 3.7.2 '@pagefind/default-ui': 1.4.0 '@types/hast': 3.0.4 '@types/js-yaml': 4.0.9 '@types/mdast': 4.0.4 - astro: 6.3.3(@types/node@24.12.0)(rollup@4.59.0) - astro-expressive-code: 0.42.0(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0)) + astro: 6.3.8(@types/node@24.12.0)(rollup@4.59.0) + astro-expressive-code: 0.42.0(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0)) bcp-47: 2.1.0 hast-util-from-html: 2.0.3 hast-util-select: 6.0.4 @@ -1998,7 +1959,7 @@ snapshots: mdast-util-directive: 3.1.0 mdast-util-to-markdown: 2.1.2 mdast-util-to-string: 4.0.0 - pagefind: 1.4.0 + pagefind: 1.5.2 rehype: 13.0.2 rehype-format: 5.0.1 remark-directive: 4.0.0 @@ -2031,39 +1992,39 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@biomejs/biome@2.4.15': + '@biomejs/biome@2.4.16': optionalDependencies: - '@biomejs/cli-darwin-arm64': 2.4.15 - '@biomejs/cli-darwin-x64': 2.4.15 - '@biomejs/cli-linux-arm64': 2.4.15 - '@biomejs/cli-linux-arm64-musl': 2.4.15 - '@biomejs/cli-linux-x64': 2.4.15 - '@biomejs/cli-linux-x64-musl': 2.4.15 - '@biomejs/cli-win32-arm64': 2.4.15 - '@biomejs/cli-win32-x64': 2.4.15 - - '@biomejs/cli-darwin-arm64@2.4.15': + '@biomejs/cli-darwin-arm64': 2.4.16 + '@biomejs/cli-darwin-x64': 2.4.16 + '@biomejs/cli-linux-arm64': 2.4.16 + '@biomejs/cli-linux-arm64-musl': 2.4.16 + '@biomejs/cli-linux-x64': 2.4.16 + '@biomejs/cli-linux-x64-musl': 2.4.16 + '@biomejs/cli-win32-arm64': 2.4.16 + '@biomejs/cli-win32-x64': 2.4.16 + + '@biomejs/cli-darwin-arm64@2.4.16': optional: true - '@biomejs/cli-darwin-x64@2.4.15': + '@biomejs/cli-darwin-x64@2.4.16': optional: true - '@biomejs/cli-linux-arm64-musl@2.4.15': + '@biomejs/cli-linux-arm64-musl@2.4.16': optional: true - '@biomejs/cli-linux-arm64@2.4.15': + '@biomejs/cli-linux-arm64@2.4.16': optional: true - '@biomejs/cli-linux-x64-musl@2.4.15': + '@biomejs/cli-linux-x64-musl@2.4.16': optional: true - '@biomejs/cli-linux-x64@2.4.15': + '@biomejs/cli-linux-x64@2.4.16': optional: true - '@biomejs/cli-win32-arm64@2.4.15': + '@biomejs/cli-win32-arm64@2.4.16': optional: true - '@biomejs/cli-win32-x64@2.4.15': + '@biomejs/cli-win32-x64@2.4.16': optional: true '@capsizecss/unpack@4.0.0': @@ -2319,24 +2280,27 @@ snapshots: '@oslojs/encoding@1.1.0': {} - '@pagefind/darwin-arm64@1.4.0': + '@pagefind/darwin-arm64@1.5.2': optional: true - '@pagefind/darwin-x64@1.4.0': + '@pagefind/darwin-x64@1.5.2': optional: true '@pagefind/default-ui@1.4.0': {} - '@pagefind/freebsd-x64@1.4.0': + '@pagefind/freebsd-x64@1.5.2': + optional: true + + '@pagefind/linux-arm64@1.5.2': optional: true - '@pagefind/linux-arm64@1.4.0': + '@pagefind/linux-x64@1.5.2': optional: true - '@pagefind/linux-x64@1.4.0': + '@pagefind/windows-arm64@1.5.2': optional: true - '@pagefind/windows-x64@1.4.0': + '@pagefind/windows-x64@1.5.2': optional: true '@rollup/pluginutils@5.3.0(rollup@4.59.0)': @@ -2525,12 +2489,12 @@ snapshots: astring@1.9.0: {} - astro-expressive-code@0.42.0(astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0)): + astro-expressive-code@0.42.0(astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0)): dependencies: - astro: 6.3.3(@types/node@24.12.0)(rollup@4.59.0) + astro: 6.3.8(@types/node@24.12.0)(rollup@4.59.0) rehype-expressive-code: 0.42.0 - astro@6.3.3(@types/node@24.12.0)(rollup@4.59.0): + astro@6.3.8(@types/node@24.12.0)(rollup@4.59.0): dependencies: '@astrojs/compiler': 4.0.0 '@astrojs/internal-helpers': 0.9.1 @@ -2582,8 +2546,8 @@ snapshots: unist-util-visit: 5.1.0 unstorage: 1.17.5 vfile: 6.0.3 - vite: 7.3.2(@types/node@24.12.0) - vitefu: 1.1.2(vite@7.3.2(@types/node@24.12.0)) + vite: 7.3.3(@types/node@24.12.0) + vitefu: 1.1.2(vite@7.3.3(@types/node@24.12.0)) xxhash-wasm: 1.1.0 yargs-parser: 22.0.0 zod: 4.3.6 @@ -3645,14 +3609,15 @@ snapshots: package-manager-detector@1.6.0: {} - pagefind@1.4.0: + pagefind@1.5.2: optionalDependencies: - '@pagefind/darwin-arm64': 1.4.0 - '@pagefind/darwin-x64': 1.4.0 - '@pagefind/freebsd-x64': 1.4.0 - '@pagefind/linux-arm64': 1.4.0 - '@pagefind/linux-x64': 1.4.0 - '@pagefind/windows-x64': 1.4.0 + '@pagefind/darwin-arm64': 1.5.2 + '@pagefind/darwin-x64': 1.5.2 + '@pagefind/freebsd-x64': 1.5.2 + '@pagefind/linux-arm64': 1.5.2 + '@pagefind/linux-x64': 1.5.2 + '@pagefind/windows-arm64': 1.5.2 + '@pagefind/windows-x64': 1.5.2 parse-entities@4.0.2: dependencies: @@ -4107,7 +4072,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite@7.3.2(@types/node@24.12.0): + vite@7.3.3(@types/node@24.12.0): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.4) @@ -4119,7 +4084,7 @@ snapshots: '@types/node': 24.12.0 fsevents: 2.3.3 - vite@7.3.3(@types/node@24.12.0): + vite@7.3.5(@types/node@24.12.0): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.4) @@ -4131,9 +4096,9 @@ snapshots: '@types/node': 24.12.0 fsevents: 2.3.3 - vitefu@1.1.2(vite@7.3.2(@types/node@24.12.0)): + vitefu@1.1.2(vite@7.3.3(@types/node@24.12.0)): optionalDependencies: - vite: 7.3.2(@types/node@24.12.0) + vite: 7.3.3(@types/node@24.12.0) web-namespaces@2.0.1: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 11bdcbd..2f3eafd 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -5,7 +5,8 @@ allowBuilds: esbuild: false sharp: false -minimumReleaseAge: 1440 +minimumReleaseAge: 10080 +ignoreScripts: true overrides: defu@<=6.1.4: '>=6.1.5'