Uploading expenses as multipart/form-data

Uploads expenses.

Warning

The Yandex Direct data is sent to Yandex Metrica automatically, so you don't have to upload it manually. Uploading a data file will create duplicates with the automatically sent data, making the report incorrect.

Data is passed as multipart/form-data in the file parameter in CSV format. In the first line of the request, pass the names of the columns.

Required columns:

  • Date: String, a date in YYYY-MM-DD format or a range of dates in YYYY-MM-DD/YYYY-MM-DD format.
  • UTMSource: String, utm_source label value. Optional if TrafficSource is passed.
  • TrafficSource: First-level traffic source. Acceptable values are given in the table.
  • Expenses: Number, amount of expenses, with a full stop (.) as the decimal separator.

Optional columns:

  • TrafficSourceDetail: Second-level traffic source. Acceptable values are given in the table.
  • UTMMedium: String, utm_medium label value.
  • UTMCampaign: String, utm_campaign label value.
  • UTMTerm: String, utm_term label value.
  • UTMContent: String, utm_content label value.
  • Currency: String, a three-letter ISO 4217 currency code.
  • Clicks: Number, click count.

Note

The values of UTM tags are case-sensitive. You need to remember this when you upload or delete data.

Request

POST

https://api-metrika.yandex.net/management/v1/counter/{counterId}/expense/upload

Path parameters

Name

Description

counterId

Type: integer

ID of the counter for which you want to upload expenses.

Query parameters

Name

Description

comment

Type: string

Comment.

Example: ``

provider

Type: string

A service that sends data to Yandex Metrica (provider). If not set, the value default is used.

Example: ``

Body

multipart/form-data
{
  "file": "example"
}

Name

Description

file

Type: string<binary>

Example: example

Responses

200 OK

OK

Body

application/json
{
  "uploading": {
    "id": 0,
    "create_time": "2025-01-01T00:00:00Z",
    "source_quantity": 0,
    "provider": "example",
    "comment": "example",
    "type": "example",
    "status": "example"
  }
}

Name

Description

uploading

Type: ExpenseUploading

Information about expense uploads.

Example
{
  "id": 0,
  "create_time": "2025-01-01T00:00:00Z",
  "source_quantity": 0,
  "provider": "example",
  "comment": "example",
  "type": "example",
  "status": "example"
}

ExpenseUploading

Information about expense uploads.

Name

Description

comment

Type: string

Comment.

Example: example

create_time

Type: string<date-time>

Upload time.

Example: 2025-01-01T00:00:00Z

id

Type: integer

Upload ID.

provider

Type: string

Data provider name.

Example: example

source_quantity

Type: integer

Number of rows in the source file.

status

Type: string

Upload status:

  • UPLOADED: Upload complete.
  • IN_PROGRESS: Upload in progress.
  • PROCESSED: Upload processed.

Example: example

type

Type: string

Upload type:

  • EXPENSES: Expenses.
  • REMOVES: Deleting expenses.

Example: example

Example
{
  "id": 0,
  "create_time": "2025-01-01T00:00:00Z",
  "source_quantity": 0,
  "provider": "example",
  "comment": "example",
  "type": "example",
  "status": "example"
}

No longer supported, please use an alternative and newer version.