# Update configurations Updates the columns, output-file settings, display timezone, and delivery notifiers of a previously configured Other Operations report. The report type is specified by `reportId`, and the configuration structure is identified by `structureId`. In case of success, the request returns a response with status 200. **PUT** `/v1/reporting/operations/{reportId}/config/{structureId}` ## Request parameters ### Path - `reportId` (string, required) Other Operations report type. - `structureId` (string, required) Structure UUID returned when creating the configuration with [POST /config](/developers/en/reference/reports/create-activity-report-configuration/post). - `structure` (object, optional) Updated report structure. It must include the name and columns; send `file_format` and `display_timezone` only when you want to update those settings. - `structure.name` (string, optional) Structure name. - `structure.columns` (array, optional) Columns to update in the report structure. Each report accepts specific fields; see [Report fields](/developers/en/docs/reports/activities-reports/report-fields) to identify the fields available for the report you want to modify. - `structure.columns[].key` (string, optional) Name of the report column you want to update. - `structure.file_format` (object, optional) This object is optional. Send it to update the separators, date format, name, or prefix of the report file. - `structure.file_format.column_separator` (string, optional) Character used to separate columns in the CSV file. - `structure.file_format.decimal_separator` (string, optional) Character used to separate the integer and fractional parts of decimal values in the report file. - `structure.file_format.date_format` (string, optional) Format used to represent dates in the report file. For example, `yyyy-MM-dd`. - `structure.file_format.name` (string, optional) Output-file name. - `structure.file_format.prefix` (string, optional) Prefix used to compose the report file name once it is generated and ready for download. - `structure.display_timezone` (string, optional) This field is optional. Send it to update the timezone used to display dates and times in the report. It does not change the `gte` and `lte` values sent in `filters.creation_date.range`. - `notifiers` (array, optional) This array is optional. Send it to add delivery notifiers or update the configuration of existing ones. - `notifiers[].id` (string, optional) Unique identifier (UUID) of the notifier. Required when updating an existing notifier; omit it to create a new one. - `notifiers[].type` (string, optional) Delivery notifier type. The possible values are: Possible enum values: - `webhook` Sends a notification to the configured webhook URL. - `ftp` Delivers the report to an FTP or SFTP server using password authentication. - `ftp_pkey` Delivers the report to an SFTP server using SSH private-key authentication. - `internal_sftp` Delivers the report through Mercado Pago's internal SFTP channel. - `notifiers[].data` (object, optional) Delivery connection data. - `notifiers[].data.url` (string, optional) URL that receives the notifications. Required when the notifier type is `webhook`. - `notifiers[].data.key` (string, optional) Secret used to validate webhook signatures. Required when the notifier type is `webhook`. - `notifiers[].data.server` (string, optional) Public URL or IP address of the FTP or SFTP server. Required when the notifier type is `ftp` or `ftp_pkey`. - `notifiers[].data.port` (integer, optional) Port used to establish the connection to the FTP or SFTP server. Required when the notifier type is `ftp` or `ftp_pkey`. - `notifiers[].data.username` (string, optional) Username used to authenticate on the FTP or SFTP server. Required when the notifier type is `ftp` or `ftp_pkey`. - `notifiers[].data.password` (string, optional) Password used to authenticate on the FTP or SFTP server. Required when the notifier type is `ftp`. - `notifiers[].data.private_key` (string, optional) SSH private key used to authenticate on the SFTP server. Required when the notifier type is `ftp_pkey`. - `notifiers[].data.remote_dir` (string, optional) Folder on the FTP or SFTP server where the reports will be saved. Required when the notifier type is `ftp` or `ftp_pkey`. - `notifiers[].description` (string, optional) This field is optional and can be used to identify the notifier. ## Response parameters - `structure` (object, optional) Report structure returned after updating the configuration. - `structure.id` (string, optional) Unique identifier (UUID) of the report structure. - `structure.name` (string, optional) Name assigned to the report structure. - `structure.columns` (array, optional) Columns included in the report structure. - `structure.columns[].key` (string, optional) Name of the report column included in the structure. - `structure.notifiers` (array, optional) Unique identifiers (UUIDs) of the notifiers associated with the structure. - `structure.scheduled` (boolean, optional) Indicates whether automatic report generation is enabled for the structure. - `structure.version` (integer, optional) Current version of the report structure. - `notifiers` (array, optional) Notifiers updated and associated with the report structure. - `notifiers[].id` (string, optional) Unique identifier (UUID) of the notifier. - `notifiers[].type` (string, optional) Delivery channel configured for the notifier. - `notifiers[].status` (string, optional) Current status of the notifier. - `notifiers[].version` (integer, optional) Current version of the notifier. ## Errors | Status | Error | Description | | ------- | ------- | ----------- | | 400 | validation_error | One or more configuration fields are invalid. Check the structure fields and the notifier data; when updating an existing notifier, include its `id`. Then submit the request again. | | 401 | invalid_token | The Access Token is invalid, expired, or does not have write permissions. Check the token sent in the `Authorization` header and its scopes, then submit the request again. | | 404 | configuration_not_found | No configuration was found for the specified `structureId`. Retrieve the active configuration with [GET /config](/developers/en/reference/reports/get-activity-report-configuration/get), verify `structure.id`, and submit the update again. | ## Request example ### cURL ```bash curl -X PUT \ 'https://api.mercadopago.com/v1/reporting/operations/{reportId}/config/{structureId}' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer ' \ -d '{ "structure": { "name": "collections-structure", "columns": [ { "key": "date_created" } ], "file_format": { "column_separator": ",", "decimal_separator": ".", "date_format": "yyyy-MM-dd", "name": "activities_collection", "prefix": "activities_" }, "display_timezone": "GMT-05" }, "notifiers": [ { "id": "11112222-aaaa-bbbb-cccc-333344445555", "type": "webhook", "data": { "url": "string", "key": "string", "server": "sftp.myserver.com", "port": 22, "username": "username", "password": "mypassword", "private_key": "string", "remote_dir": "/myfolder" }, "description": "Webhook delivery" } ] }' ``` ## Response example ```json { "structure": { "id": "aaaabbbb-1111-2222-3333-ccccddddeeee", "name": "collections-structure", "columns": [ { "key": "date_created" } ], "notifiers": [ "11112222-aaaa-bbbb-cccc-333344445555" ], "scheduled": false, "version": 1 }, "notifiers": [ { "id": "11112222-aaaa-bbbb-cccc-333344445555", "type": "webhook", "status": "ACTIVE", "version": 1 } ] } ```