Adobe Suite Exchange Rate API

The Exchange Rate API from Adobe Suite — 7 operation(s) for exchange rate.

Operations 12

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /exchangerate/{id} Get one currency exchange rate · Get for ExchangeRate #
Ask an LLM
“What rate is stored on a specific exchange rate record in Workfront?”
“Can I pick which fields come back when fetching a single exchange rate?”
Tell an agent
Show exchange rate {id}.
Get the {fields} of exchange rate {id}.
PUT /exchangerate/{id} Edit a single exchange rate · Edit a ExchangeRate #
Ask an LLM
“How do I change the conversion rate on one existing exchange rate record?”
“Can I correct the currency on a single exchange rate after it was saved?”
Tell an agent
Update exchange rate {id} with the new rate.
Edit the exchange rate record {id}.
DELETE /exchangerate/{id} Delete a single exchange rate · Delete for ExchangeRate #
Ask an LLM
“Can I remove one exchange rate that was entered by mistake?”
“Is there a force option when a single exchange rate is still referenced?”
Tell an agent destructive · confirm first
Delete exchange rate {id}.
Force-delete exchange rate {id} even if it is in use.
GET /exchangerate Fetch several exchange rates by ID · Bulk Get for ExchangeRate #
Ask an LLM
“Can I fetch a batch of exchange rates in one call when I know their IDs?”
“Which exchange rates match a list of record IDs I already have?”
Tell an agent
Get exchange rates {ids} in one request.
Fetch these exchange rate records together: {ids}.
PUT /exchangerate Edit many exchange rates at once · Bulk Edit for ExchangeRate #
Ask an LLM
“Is it possible to update the rates on many exchange rate records in one request?”
“How would I bulk edit exchange rates after a currency revaluation?”
Tell an agent
Bulk update all the exchange rates in this list.
Apply these new values to several exchange rate records at once.
POST /exchangerate Add a new currency exchange rate · Create a exchangerate #
Ask an LLM
“How do I add a new exchange rate for a foreign currency in Workfront?”
“Can I create exchange rate records for project financials through the API?”
Tell an agent
Create a new exchange rate for euros.
Add an exchange rate record for this currency and rate.
DELETE /exchangerate Delete several exchange rates by ID · Bulk Delete for ExchangeRate #
Ask an LLM
“Can I remove a batch of exchange rates in a single call?”
“What does bulk deleting exchange rates require?”
Tell an agent destructive · confirm first
Delete exchange rates {ids}.
Remove all of these exchange rate records: {ids}.
GET /exchangerate/count Count exchange rates matching filters · Count of exchangerate #
Ask an LLM
“How many exchange rates are defined in my Workfront instance?”
“What is the number of exchange rates for a particular currency?”
Tell an agent
Count exchange rates matching {filters}.
Tell me how many exchange rate records exist.
GET /exchangerate/search Search exchange rates by criteria · Search of exchangerate #
Ask an LLM
“Which exchange rates use a given currency code?”
“Can I search exchange rates with filters and choose the returned fields?”
Tell an agent
Search exchange rates where {filters}.
Find exchange rates matching {filters} and return {fields}.
GET /exchangerate/report Run an aggregate report on exchange rates · Report of exchangerate #
Ask an LLM
“Can I group and summarize exchange rates in a report query?”
“What does an exchange rate report with grouping and aggregates return?”
Tell an agent
Run an exchange rate report grouped by currency filtered on {filters}.
Produce an aggregated report of exchange rates using {listOptions}.
PUT /exchangerate/getCustomerCurrencies List the currencies set up for my customer · Exchange rate get customer currencies #
Ask an LLM
“Which currencies are configured for my Workfront customer account?”
“What currencies can I use when entering exchange rates?”
Tell an agent
Show the currencies configured for our Workfront account.
List our customer currencies.
PUT /exchangerate/saveCustomerExchangeRates Save the customer's base currency and rates · Exchange rate save customer exchange rates #
Ask an LLM
“How do I set the base currency and all exchange rates for my account in one go?”
“Can I replace my organization's currency table with a new set of rates?”
Tell an agent
Set base currency {baseCurrency} with rates {rates}.
Save the customer exchange rate table {rates}.

Documentation

📖
Documentation
https://developer.adobe.com/photoshop/api/docs/
📖
Authentication
https://developer.adobe.com/developer-console/docs/guides/authentication/
📖
Documentation
https://developer.adobe.com/lightroom/api/docs/
📖
Documentation
https://developer.adobe.com/illustrator/api/docs/
📖
Documentation
https://developer.adobe.com/indesign/docs/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/
📖
GettingStarted
https://developer.adobe.com/document-services/docs/overview/pdf-extract-api/gettingstarted/
📖
Documentation
https://developer.adobe.com/document-services/docs/overview/pdf-accessibility-auto-tag-api/
📖
Documentation
https://developer.adobe.com/analytics-apis/docs/
📖
APIReference
https://developer.adobe.com/analytics-apis/docs/2.0/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/
📖
APIReference
https://developer.adobe.com/firefly-services/docs/api/
📖
Documentation
https://developer.adobe.com/audio-video-firefly-services/
📖
GettingStarted
https://developer.adobe.com/audio-video-firefly-services/getting-started/
📖
Documentation
https://developer.adobe.com/creative-cloud-libraries/docs/
📖
APIReference
https://developer.adobe.com/creative-cloud-libraries/docs/api/
📖
Documentation
https://developer.adobe.com/express/embed-sdk/docs/guides/
📖
APIReference
https://developer.adobe.com/express/embed-sdk/docs/v4/
📖
GettingStarted
https://developer.adobe.com/express/embed-sdk/docs/guides/quickstart/
📖
Documentation
https://developer.adobe.com/experience-platform-apis/
📖
GettingStarted
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-guide
📖
Documentation
https://developer.adobe.com/marketo-apis/
📖
Authentication
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/authentication
📖
Documentation
https://developer.adobe.com/commerce/docs/
📖
GettingStarted
https://developer.adobe.com/commerce/webapi/get-started/
📖
Documentation
https://developer.adobe.com/experience-cloud/cloud-manager/
📖
Documentation
https://developer.adobe.com/journey-optimizer-apis/
📖
Documentation
https://developer.adobe.com/workfront-apis/
📖
Documentation
https://developer.adobe.com/firefly-services/docs/substance3d/
📖
Documentation
https://developer.adobe.com/data-collection-apis/
📖
Documentation
https://developer.adobe.com/adobe-status/
📖
Documentation
https://developer.adobe.com/vip-marketplace/

Specifications

Other Resources

🔗
Pricing
https://developer.adobe.com/document-services/pricing/
🔗
SDKs
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/sdks/
🔗
ReleaseNotes
https://developer.adobe.com/document-services/docs/overview/pdf-services-api/releasenotes
🔗
Guides
https://developer.adobe.com/analytics-apis/docs/2.0/guides/
🔗
Guides
https://developer.adobe.com/firefly-services/docs/guides/
🔗
Usage Notes
https://developer.adobe.com/audio-video-firefly-services/getting_started/usage/
🔗
Overview
https://developer.adobe.com/creative-cloud-libraries/docs/overview/
🔗
Integration Guide
https://developer.adobe.com/creative-cloud-libraries/docs/integrate/
🔗
API Fundamentals
https://experienceleague.adobe.com/en/docs/experience-platform/landing/platform-apis/api-fundamentals
🔗
Developer Guide
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/home
🔗
REST API
https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/rest/rest-api
🔗
REST API
https://developer.adobe.com/commerce/webapi/rest/
🔗
GraphQL API
https://developer.adobe.com/commerce/webapi/graphql-api/
🔗
REST API Reference
https://developer.adobe.com/commerce/webapi/reference/rest/paas/
🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/adobe-suite/refs/heads/main/graphql/adobe-suite-graphql.md
🔗
Webhooks
https://developer.adobe.com/experience-cloud/cloud-manager/guides/getting-started/create-event-integration/
🔗
StatusPage
https://status.adobe.com/

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/adobe-suite:adobe-suite-exchange-rate-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

adobe-suite-exchange-rate-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Adobe Workfront Exchangerate API
  version: v19.0
servers:
- url: https://{domain}.my.workfront.com/attask/api/v19.0
  description: Production environment
- url: https://{domain}.preview.workfront.com/attask/api/v19.0
  description: Preview environment
security:
- ApiKeyHeader: []
- SessionIDHeader: []
- AtTaskCookie: []
- WFAuthCookie: []
tags:
- name: Exchange Rate
paths:
  /exchangerate/{id}:
    get:
      summary: Get for ExchangeRate
      operationId: getExchangeRate
      parameters:
      - name: id
        in: path
        description: Object ID
        required: true
        schema:
          type: string
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
    put:
      summary: Edit a ExchangeRate
      operationId: editExchangeRate
      parameters:
      - name: id
        in: path
        description: Object ID
        required: true
        schema:
          type: string
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
    delete:
      summary: Delete for ExchangeRate
      operationId: deleteExchangeRate
      parameters:
      - name: id
        in: path
        description: Object ID
        required: true
        schema:
          type: string
      - name: force
        in: query
        description: force delete flag
        required: false
        schema:
          type: boolean
      responses:
        '200':
          $ref: '#/components/responses/200_OK'
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
  /exchangerate:
    get:
      summary: Bulk Get for ExchangeRate
      operationId: getExchangeRates
      parameters:
      - name: id
        in: query
        description: Object IDs
        required: true
        schema:
          type: string
          example: id1,id2,id3
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    anyOf:
                    - $ref: ./ExchangeRate.json
                    - type: array
                      items:
                        $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
    put:
      summary: Bulk Edit for ExchangeRate
      operationId: editExchangeRates
      parameters:
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      requestBody:
        content:
          application/json:
            schema:
              anyOf:
              - $ref: ./ExchangeRate.json
              - type: array
                items:
                  $ref: ./ExchangeRate.json
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    anyOf:
                    - $ref: ./ExchangeRate.json
                    - type: array
                      items:
                        $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
    post:
      summary: Create a exchangerate
      operationId: addExchangeRates
      parameters:
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      requestBody:
        content:
          application/json:
            schema:
              anyOf:
              - $ref: ./ExchangeRate.json
              - type: array
                items:
                  $ref: ./ExchangeRate.json
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    anyOf:
                    - $ref: ./ExchangeRate.json
                    - type: array
                      items:
                        $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
    delete:
      summary: Bulk Delete for ExchangeRate
      operationId: deleteExchangeRates
      parameters:
      - name: id
        in: query
        description: Object IDs
        required: true
        schema:
          type: string
          example: id1,id2,id3
      - name: force
        in: query
        description: force delete flag
        required: false
        schema:
          type: boolean
      responses:
        '200':
          $ref: '#/components/responses/200_OK'
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
  /exchangerate/count:
    get:
      summary: Count of exchangerate
      operationId: countExchangeRates
      parameters:
      - name: filters
        in: query
        description: JSON representing the filtering conditions
        required: false
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      count:
                        type: integer
                        format: int32
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
  /exchangerate/search:
    get:
      summary: Search of exchangerate
      operationId: searchExchangeRates
      parameters:
      - name: filters
        in: query
        description: JSON representing the filtering conditions
        required: false
        content:
          application/json:
            schema:
              type: object
      - name: fields
        in: query
        description: JSON array defining the fields to retrieve
        required: false
        example: '["ID", "name"]'
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      - name: listOptions
        in: query
        description: JSON object defining the list options
        required: false
        content:
          application/json:
            schema:
              $ref: ./ListOptions.json
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: ./ExchangeRate.json
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
  /exchangerate/report:
    get:
      summary: Report of exchangerate
      operationId: reportExchangeRates
      parameters:
      - name: filters
        in: query
        description: JSON representing the filtering conditions
        required: false
        content:
          application/json:
            schema:
              type: object
      - name: listOptions
        in: query
        description: JSON object defining the list options
        required: false
        content:
          application/json:
            schema:
              $ref: ./ListOptions.json
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
  /exchangerate/getCustomerCurrencies:
    summary: getCustomerCurrencies
    put:
      operationId: exchangeRateGetCustomerCurrencies
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
      summary: Exchange rate get customer currencies
      x-summary-source: derived
  /exchangerate/saveCustomerExchangeRates:
    summary: saveCustomerExchangeRates
    put:
      operationId: exchangeRateSaveCustomerExchangeRates
      parameters:
      - name: baseCurrency
        in: query
        description: baseCurrency
        required: false
        schema:
          type: string
      - name: rates
        in: query
        description: rates
        required: false
        schema:
          type: object
          additionalProperties:
            type: string
      responses:
        '200':
          description: Great Success
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: object
        '422':
          $ref: '#/components/responses/422_UNPROCESSABLE_ENTITY'
        '400':
          $ref: '#/components/responses/400_BAD_REQUEST'
        '429':
          $ref: '#/components/responses/429_TOO_MANY_REQUESTS'
        '403':
          $ref: '#/components/responses/403_FORBIDDEN'
        '401':
          $ref: '#/components/responses/401_UNAUTHORIZED'
        '404':
          $ref: '#/components/responses/404_NOT_FOUND'
        '500':
          $ref: '#/components/responses/500_INTERNAL_SERVER_ERROR'
        '410':
          $ref: '#/components/responses/410_GONE'
      tags:
      - Exchange Rate
      summary: Exchange rate save customer exchange rates
      x-summary-source: derived
components:
  responses:
    200_OK:
      description: Great Success
      content:
        application/json:
          schema:
            type: object
            properties:
              data:
                type: object
                properties:
                  success:
                    type: boolean
    500_INTERNAL_SERVER_ERROR:
      description: An unexpected error occurred.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    410_GONE:
      description: The requested resource is no longer available in this API version.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    400_BAD_REQUEST:
      description: The operation is not supported.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    401_UNAUTHORIZED:
      description: The request is not authenticated.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    404_NOT_FOUND:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    403_FORBIDDEN:
      description: The user does not have permission to perform the operation.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    429_TOO_MANY_REQUESTS:
      description: Too many concurrent API requests for the given customer.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
    422_UNPROCESSABLE_ENTITY:
      description: The request contains invalid data.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  class:
                    type: string
                  message:
                    type: string
  securitySchemes:
    SessionIDHeader:
      type: apiKey
      name: sessionID
      in: header
    AtTaskCookie:
      type: apiKey
      name: attask
      in: cookie
    WFAuthCookie:
      type: apiKey
      name: wf-auth
      in: cookie
    ApiKeyHeader:
      type: apiKey
      name: apiKey
      in: header