> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vantage.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload custom provider costs

> Create UserCostsUpload via CSV for a Custom Provider Integration.



## OpenAPI

````yaml https://api.vantage.sh/v2/oas_v3.json post /integrations/{integration_token}/costs.csv
openapi: 3.0.1
info:
  title: Vantage
  description: Vantage API
  termsOfService: https://www.vantage.sh/terms-of-use
  contact:
    name: Vantage Support
    url: https://www.vantage.sh
    email: support@vantage.sh
  version: 2.0.0
servers:
  - url: https://api.vantage.sh/v2
security:
  - oauth2:
      - read
tags:
  - name: AccessGrants
    description: Operations about AccessGrants
  - name: AnomalyAlerts
    description: Operations about AnomalyAlerts
  - name: AnomalyNotifications
    description: Operations about AnomalyNotifications
  - name: AuditLogs
    description: Operations about AuditLogs
  - name: BillingProfiles
    description: Operations about BillingProfiles
  - name: BillingRules
    description: Operations about BillingRules
  - name: BudgetAlerts
    description: Operations about BudgetAlerts
  - name: Budgets
    description: Operations about Budgets
  - name: BusinessMetrics
    description: Operations about BusinessMetrics
  - name: Canvases
    description: Operations about Canvases
  - name: CostAlertEvents
    description: Operations about CostAlertEvents
  - name: CostAlerts
    description: Operations about CostAlerts
  - name: CostProvider
    description: Operations about CostProviders
  - name: CostProviderAccounts
    description: Operations about CostProviderAccounts
  - name: Costs
    description: Operations about Costs
  - name: CostService
    description: Operations about CostServices
  - name: Dashboards
    description: Operations about Dashboards
  - name: DataExports
    description: Operations about DataExports
  - name: ExchangeRates
    description: Operations about ExchangeRates
  - name: FinancialCommitmentReports
    description: Operations about FinancialCommitmentReports
  - name: FinancialCommitments
    description: Operations about FinancialCommitments
  - name: Folders
    description: Operations about Folders
  - name: Integrations
    description: Operations about Integrations
  - name: Invoices
    description: Operations about Invoices
  - name: KubernetesEfficiencyReports
    description: Operations about KubernetesEfficiencyReports
  - name: ManagedAccounts
    description: Operations about ManagedAccounts
  - name: Me
    description: Operations about Mes
  - name: NetworkFlowReports
    description: Operations about NetworkFlowReports
  - name: OpenAPISpecification
    description: Operations about OpenAPISpecifications
  - name: Ping
    description: Operations about Pings
  - name: Prices
    description: Operations about Prices
  - name: Recommendations
    description: Operations about Recommendations
  - name: RecommendationViews
    description: Operations about RecommendationViews
  - name: ReportNotifications
    description: Operations about ReportNotifications
  - name: ResourceReports
    description: Operations about ResourceReports
  - name: Resources
    description: Operations about Resources
  - name: SavedFilters
    description: Operations about SavedFilters
  - name: Segments
    description: Operations about Segments
  - name: Tags
    description: Operations about Tags
  - name: Teams
    description: Operations about Teams
  - name: UnitCosts
    description: Operations about UnitCosts
  - name: UserFeedback
    description: Operations about UserFeedbacks
  - name: Users
    description: Operations about Users
  - name: VirtualTags
    description: Operations about VirtualTags
  - name: Workspaces
    description: Operations about Workspaces
paths:
  /integrations/{integration_token}/costs.csv:
    post:
      tags:
        - Integrations
      summary: Upload custom provider costs
      description: Create UserCostsUpload via CSV for a Custom Provider Integration.
      operationId: createUserCostsUploadViaCsv
      parameters:
        - name: integration_token
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
                - csv
              type: object
              properties:
                csv:
                  type: string
                  description: CSV file containing custom costs
                  format: binary
                auto_transform:
                  type: boolean
                  description: >-
                    Attempt to automatically transform the CSV file to match the
                    FOCUS format.
                  default: false
          multipart/form-data:
            schema:
              required:
                - csv
              type: object
              properties:
                csv:
                  type: string
                  description: CSV file containing custom costs
                  format: binary
                auto_transform:
                  type: boolean
                  description: >-
                    Attempt to automatically transform the CSV file to match the
                    FOCUS format.
                  default: false
        required: true
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserCostsUpload'
              example:
                token: usr_csts_upld_68f53287682faaf8
                filename: costs.csv20240827-15484-pfxe9o
                amount: '1000.0'
                start_date: '2021-01-01'
                end_date: '2021-02-01'
                import_status: processing
                created_by_token: usr_9ad0e852b8c67db5
                created_at: '2024-08-27T22:44:29.220Z'
        '400':
          description: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
        '422':
          description: UnprocessableEntity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Errors'
      security:
        - oauth2:
            - write
components:
  schemas:
    UserCostsUpload:
      required:
        - amount
        - created_at
        - created_by_token
        - end_date
        - filename
        - import_status
        - start_date
        - token
      type: object
      properties:
        token:
          type: string
          description: The token of the UserCostsUpload.
          nullable: false
          example: usr_csts_upld_1234
        filename:
          type: string
          description: The filename of the uploaded costs UserCostsUpload.
          nullable: false
          example: usr_csts_upld_1234.parquet
        amount:
          type: string
          description: The total amount of the costs in the UserCostsUpload.
          nullable: false
          example: '1234.56'
        start_date:
          type: string
          description: The start date of the costs in the UserCostsUpload.
          nullable: false
          example: '2021-01-01'
        end_date:
          type: string
          description: The end date of the costs in the UserCostsUpload.
          nullable: false
          example: '2021-01-31'
        import_status:
          type: string
          description: Import status of the UserCostsUpload.
          nullable: false
          example: processing
        created_by_token:
          type: string
          description: The token of the Creator of the UserCostsUpload.
          nullable: false
          example: usr_1234
        created_at:
          type: string
          description: When the UserCostsUpload was uploaded.
          nullable: false
          example: '2021-01-01T00:00:00Z'
      description: UserCostsUpload model
    Errors:
      required:
        - errors
      type: object
      properties:
        links:
          $ref: '#/components/schemas/Links'
        errors:
          type: array
          nullable: false
          items:
            type: string
      description: Errors model
    Links:
      type: object
      properties:
        self:
          type: string
          description: The URL of the current page of results.
          nullable: true
        first:
          type: string
          description: The URL of the first page of results.
          nullable: true
        next:
          type: string
          description: The URL of the next page of results, if one exists.
          nullable: true
        last:
          type: string
          description: The URL of the last page of results, if one exists.
          nullable: true
        prev:
          type: string
          description: The URL of the previous page of results, if one exists.
          nullable: true
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://console.vantage.sh/account/profile
          scopes:
            read: Grants read access
            write: Grants write access

````