## Create a quota configuration

`client.QuotaManagement.New(ctx, params) (*QuotaConfiguration, error)`

**post** `/api/v1/beta/quota-management`

Create a quota configuration for your organization, or for a single project within it.

### Parameters

- `params QuotaManagementNewParams`

  - `OrganizationID param.Field[string]`

    Query param

  - `Setting param.Field[QuotaManagementNewParamsSetting]`

    Body param: The quota setting to update

    - `const QuotaManagementNewParamsSettingAllowPayAsYouGo QuotaManagementNewParamsSetting = "allow_pay_as_you_go"`

    - `const QuotaManagementNewParamsSettingLimitDailyUsageCredits QuotaManagementNewParamsSetting = "limit_daily_usage_credits"`

    - `const QuotaManagementNewParamsSettingLimitMonthlyUsageCredits QuotaManagementNewParamsSetting = "limit_monthly_usage_credits"`

  - `Value param.Field[int64]`

    Body param: The value for the setting. For boolean settings, use 1 (enabled) or 0 (disabled). For credit limits, the number of credits allowed in the window; delete the setting to remove the limit. For limits denominated in USD cents, a whole number of dollars (a multiple of 100).

  - `ProjectID param.Field[string]`

    Body param: Limit this project on its own. Omit to limit the organization as a whole. A project limit does not inherit from the organization limit: both apply, and whichever is reached first stops the work. Credit limits only.

### Returns

- `type QuotaConfiguration struct{…}`

  Full quota configuration model.

  - `ConfigurationMetadata map[string, any]`

    The configuration metadata

  - `ConfigurationType QuotaConfigurationConfigurationType`

    The quota configuration type

    - `const QuotaConfigurationConfigurationTypeAllowPayAsYouGo QuotaConfigurationConfigurationType = "allow_pay_as_you_go"`

    - `const QuotaConfigurationConfigurationTypeLimitAgentCoderDailyUsageUsd QuotaConfigurationConfigurationType = "limit_agent_coder_daily_usage_usd"`

    - `const QuotaConfigurationConfigurationTypeLimitAgentDeployments QuotaConfigurationConfigurationType = "limit_agent_deployments"`

    - `const QuotaConfigurationConfigurationTypeLimitBatchFiles QuotaConfigurationConfigurationType = "limit_batch_files"`

    - `const QuotaConfigurationConfigurationTypeLimitClassifyInputTokens QuotaConfigurationConfigurationType = "limit_classify_input_tokens"`

    - `const QuotaConfigurationConfigurationTypeLimitDailyUsageCredits QuotaConfigurationConfigurationType = "limit_daily_usage_credits"`

    - `const QuotaConfigurationConfigurationTypeLimitDirectories QuotaConfigurationConfigurationType = "limit_directories"`

    - `const QuotaConfigurationConfigurationTypeLimitDirectoryFilesPerDirectory QuotaConfigurationConfigurationType = "limit_directory_files_per_directory"`

    - `const QuotaConfigurationConfigurationTypeLimitDirectoryIngestDownloadSizeBytes QuotaConfigurationConfigurationType = "limit_directory_ingest_download_size_bytes"`

    - `const QuotaConfigurationConfigurationTypeLimitDirectoryIngestFiles QuotaConfigurationConfigurationType = "limit_directory_ingest_files"`

    - `const QuotaConfigurationConfigurationTypeLimitDirectorySyncPlanActions QuotaConfigurationConfigurationType = "limit_directory_sync_plan_actions"`

    - `const QuotaConfigurationConfigurationTypeLimitEmbeddingCharacter QuotaConfigurationConfigurationType = "limit_embedding_character"`

    - `const QuotaConfigurationConfigurationTypeLimitFilesPerIndex QuotaConfigurationConfigurationType = "limit_files_per_index"`

    - `const QuotaConfigurationConfigurationTypeLimitMaxMonthlyInvoiceTotalUsdCents QuotaConfigurationConfigurationType = "limit_max_monthly_invoice_total_usd_cents"`

    - `const QuotaConfigurationConfigurationTypeLimitMonthlyUsageCredits QuotaConfigurationConfigurationType = "limit_monthly_usage_credits"`

    - `const QuotaConfigurationConfigurationTypeLimitProjects QuotaConfigurationConfigurationType = "limit_projects"`

    - `const QuotaConfigurationConfigurationTypeLimitSplitCategories QuotaConfigurationConfigurationType = "limit_split_categories"`

    - `const QuotaConfigurationConfigurationTypeLimitTotalFileCount QuotaConfigurationConfigurationType = "limit_total_file_count"`

    - `const QuotaConfigurationConfigurationTypeLimitTotalFileStorageBytes QuotaConfigurationConfigurationType = "limit_total_file_storage_bytes"`

    - `const QuotaConfigurationConfigurationTypeLimitUsers QuotaConfigurationConfigurationType = "limit_users"`

    - `const QuotaConfigurationConfigurationTypeRateLimitBatchAPICreation QuotaConfigurationConfigurationType = "rate_limit_batch_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitChatAPIMessage QuotaConfigurationConfigurationType = "rate_limit_chat_api_message"`

    - `const QuotaConfigurationConfigurationTypeRateLimitClassifyAPICreation QuotaConfigurationConfigurationType = "rate_limit_classify_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitClassifyAPIList QuotaConfigurationConfigurationType = "rate_limit_classify_api_list"`

    - `const QuotaConfigurationConfigurationTypeRateLimitClassifyAPIQuery QuotaConfigurationConfigurationType = "rate_limit_classify_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitConcurrentJobsInExecutionDefault QuotaConfigurationConfigurationType = "rate_limit_concurrent_jobs_in_execution_default"`

    - `const QuotaConfigurationConfigurationTypeRateLimitConcurrentJobsInExecutionDocIngest QuotaConfigurationConfigurationType = "rate_limit_concurrent_jobs_in_execution_doc_ingest"`

    - `const QuotaConfigurationConfigurationTypeRateLimitConcurrentJobsInExecutionMetadataUpdate QuotaConfigurationConfigurationType = "rate_limit_concurrent_jobs_in_execution_metadata_update"`

    - `const QuotaConfigurationConfigurationTypeRateLimitDefaultAPIRead QuotaConfigurationConfigurationType = "rate_limit_default_api_read"`

    - `const QuotaConfigurationConfigurationTypeRateLimitDefaultAPIWrite QuotaConfigurationConfigurationType = "rate_limit_default_api_write"`

    - `const QuotaConfigurationConfigurationTypeRateLimitDirectoryFileAPIRead QuotaConfigurationConfigurationType = "rate_limit_directory_file_api_read"`

    - `const QuotaConfigurationConfigurationTypeRateLimitDirectoryFileAPIWrite QuotaConfigurationConfigurationType = "rate_limit_directory_file_api_write"`

    - `const QuotaConfigurationConfigurationTypeRateLimitDirectoryIngestProjectJobCreation QuotaConfigurationConfigurationType = "rate_limit_directory_ingest_project_job_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitExtractAgentCreation QuotaConfigurationConfigurationType = "rate_limit_extract_agent_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitExtractAPICreation QuotaConfigurationConfigurationType = "rate_limit_extract_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitExtractAPIList QuotaConfigurationConfigurationType = "rate_limit_extract_api_list"`

    - `const QuotaConfigurationConfigurationTypeRateLimitExtractAPIQuery QuotaConfigurationConfigurationType = "rate_limit_extract_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitExtractConcurrentDefault QuotaConfigurationConfigurationType = "rate_limit_extract_concurrent_default"`

    - `const QuotaConfigurationConfigurationTypeRateLimitFileAPIRead QuotaConfigurationConfigurationType = "rate_limit_file_api_read"`

    - `const QuotaConfigurationConfigurationTypeRateLimitFileAPIWrite QuotaConfigurationConfigurationType = "rate_limit_file_api_write"`

    - `const QuotaConfigurationConfigurationTypeRateLimitIndexV1PipelineConcurrentJobs QuotaConfigurationConfigurationType = "rate_limit_index_v1_pipeline_concurrent_jobs"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseAPICreation QuotaConfigurationConfigurationType = "rate_limit_parse_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseAPIList QuotaConfigurationConfigurationType = "rate_limit_parse_api_list"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseAPIQuery QuotaConfigurationConfigurationType = "rate_limit_parse_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseConcurrentDefault QuotaConfigurationConfigurationType = "rate_limit_parse_concurrent_default"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseConcurrentPagesAgentic QuotaConfigurationConfigurationType = "rate_limit_parse_concurrent_pages_agentic"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseConcurrentPagesAgenticPlus QuotaConfigurationConfigurationType = "rate_limit_parse_concurrent_pages_agentic_plus"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseConcurrentPagesCostEffective QuotaConfigurationConfigurationType = "rate_limit_parse_concurrent_pages_cost_effective"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseConcurrentPremium QuotaConfigurationConfigurationType = "rate_limit_parse_concurrent_premium"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseTokenBucketAgentic QuotaConfigurationConfigurationType = "rate_limit_parse_token_bucket_agentic"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseTokenBucketAgenticPlus QuotaConfigurationConfigurationType = "rate_limit_parse_token_bucket_agentic_plus"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseTokenBucketCostEffective QuotaConfigurationConfigurationType = "rate_limit_parse_token_bucket_cost_effective"`

    - `const QuotaConfigurationConfigurationTypeRateLimitParseTokenBucketUnknownTier QuotaConfigurationConfigurationType = "rate_limit_parse_token_bucket_unknown_tier"`

    - `const QuotaConfigurationConfigurationTypeRateLimitProjectConcurrentJobs QuotaConfigurationConfigurationType = "rate_limit_project_concurrent_jobs"`

    - `const QuotaConfigurationConfigurationTypeRateLimitProjectConcurrentTurboJobs QuotaConfigurationConfigurationType = "rate_limit_project_concurrent_turbo_jobs"`

    - `const QuotaConfigurationConfigurationTypeRateLimitSplitAPICreation QuotaConfigurationConfigurationType = "rate_limit_split_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitSplitAPIQuery QuotaConfigurationConfigurationType = "rate_limit_split_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitSpreadsheetAPIList QuotaConfigurationConfigurationType = "rate_limit_spreadsheet_api_list"`

    - `const QuotaConfigurationConfigurationTypeRateLimitSpreadsheetAPIQuery QuotaConfigurationConfigurationType = "rate_limit_spreadsheet_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitSpreadsheetCreation QuotaConfigurationConfigurationType = "rate_limit_spreadsheet_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitUsageAPIQuery QuotaConfigurationConfigurationType = "rate_limit_usage_api_query"`

    - `const QuotaConfigurationConfigurationTypeRateLimitVerifyAPICreation QuotaConfigurationConfigurationType = "rate_limit_verify_api_creation"`

    - `const QuotaConfigurationConfigurationTypeRateLimitVerifyAPIList QuotaConfigurationConfigurationType = "rate_limit_verify_api_list"`

    - `const QuotaConfigurationConfigurationTypeRateLimitVerifyAPIQuery QuotaConfigurationConfigurationType = "rate_limit_verify_api_query"`

  - `ConfigurationValue QuotaConfigurationConfigurationValue`

    The quota configuration value

    - `Numerator int64`

      The rate numerator

    - `Denominator int64`

      The rate limit denominator

    - `DenominatorUnits string`

      The default rate limit denominator units

      - `const QuotaConfigurationConfigurationValueDenominatorUnitsDay QuotaConfigurationConfigurationValueDenominatorUnits = "day"`

      - `const QuotaConfigurationConfigurationValueDenominatorUnitsHour QuotaConfigurationConfigurationValueDenominatorUnits = "hour"`

      - `const QuotaConfigurationConfigurationValueDenominatorUnitsMinute QuotaConfigurationConfigurationValueDenominatorUnits = "minute"`

      - `const QuotaConfigurationConfigurationValueDenominatorUnitsSecond QuotaConfigurationConfigurationValueDenominatorUnits = "second"`

  - `SourceID string`

    The source ID, e.g. the organization ID

  - `SourceType QuotaConfigurationSourceType`

    The source type, e.g. 'organization'

    - `const QuotaConfigurationSourceTypeGlobal QuotaConfigurationSourceType = "GLOBAL"`

    - `const QuotaConfigurationSourceTypeOrganization QuotaConfigurationSourceType = "organization"`

    - `const QuotaConfigurationSourceTypePlanTier QuotaConfigurationSourceType = "plan_tier"`

    - `const QuotaConfigurationSourceTypeProject QuotaConfigurationSourceType = "project"`

  - `Status QuotaConfigurationStatus`

    The status of the quota, i.e. 'ACTIVE' or 'INACTIVE'

    - `const QuotaConfigurationStatusActive QuotaConfigurationStatus = "ACTIVE"`

    - `const QuotaConfigurationStatusInactive QuotaConfigurationStatus = "INACTIVE"`

  - `ID string`

    The system-generated UUID for the quota

  - `CreatedAt Time`

    The creation date of the quota configuration in the database

  - `EndedAt Time`

    The end date of the quota

  - `IdempotencyKey string`

    The idempotency key

  - `StartedAt Time`

    The start date of the quota

  - `UpdatedAt Time`

    The last updated date of the quota configuration in the database

### Example

```go
package main

import (
  "context"
  "fmt"

  "github.com/run-llama/llamacloud-admin-go"
  "github.com/run-llama/llamacloud-admin-go/option"
)

func main() {
  client := llamacloudadmin.NewClient(
    option.WithAPIKey("My API Key"),
  )
  quotaConfiguration, err := client.QuotaManagement.New(context.TODO(), llamacloudadmin.QuotaManagementNewParams{
    OrganizationID: "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    Setting: llamacloudadmin.QuotaManagementNewParamsSettingAllowPayAsYouGo,
    Value: 0,
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", quotaConfiguration.SourceID)
}
```

#### Response

```json
{
  "configuration_metadata": {
    "foo": "bar"
  },
  "configuration_type": "allow_pay_as_you_go",
  "configuration_value": {
    "numerator": 0,
    "denominator": 0,
    "denominator_units": "day"
  },
  "source_id": "source_id",
  "source_type": "GLOBAL",
  "status": "ACTIVE",
  "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "created_at": "2019-12-27T18:11:19.117Z",
  "ended_at": "2019-12-27T18:11:19.117Z",
  "idempotency_key": "idempotency_key",
  "started_at": "2019-12-27T18:11:19.117Z",
  "updated_at": "2019-12-27T18:11:19.117Z"
}
```
