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

# Upload Card Image

> Upload card image data




## OpenAPI

````yaml openapi-v1.json post /cards/images/{card_image_id}/data
openapi: 3.0.3
info:
  description: >-
    This is the official reference documentation for Synctera APIs. If you need
    something specific or have a question, <a class='text-blue-600'
    href='https://synctera.com/contact-us' target='_blank'
    rel='noreferrer'>contact us</a>.</p>
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Synctera API
  version: 1.181.0
servers:
  - description: Production
    url: https://api.synctera.com/v1
  - description: Sandbox (no real world financial impact)
    url: https://api-sandbox.synctera.com/v1
security:
  - bearerAuth: []
tags:
  - description: |
      Requests to create and manage Rewards
    name: Rewards (beta)
  - description: Requests to generate simulated webhooks
    name: Card Webhook Simulations
  - description: >-
      Testing endpoints to simulate in-store cash deposits. Available in sandbox
      environments only.
    name: In-Store Cash Deposit Simulations
  - description: Create and manage spending controls
    name: Spend Controls (beta)
  - description: Rates
    name: Rates
  - description: Requests to create and manage webhooks
    name: Webhooks
  - description: Tenant Config
    name: Tenant Config
  - description: FDX authentication and data transfer using Plaid Core Exchange
    name: Plaid Core Exchange (beta)
  - description: Create and manage disputes
    name: Disputes
  - description: Requests to simulate card payments
    name: Card Simulations
  - description: |
      Manage fee products and fee configs for automated fee collection
    name: Fee Products
  - description: Apple Pay APIs
    name: Apple Pay
  - description: Lending Config
    name: Lending Config
  - description: Payments related to lending accounts
    name: Payments
  - description: Manage negative balance processes
    name: Negative Balance
  - description: Configuration for mapping LoanPro events to Payola transaction parameters
    name: LoanPro Transaction Event Config
  - description: Requests to generate simulated transactions
    name: Cash Transaction Simulations (alpha)
  - description: Create and manage transactions
    name: Transactions (beta)
  - description: Autopay payment records for billing periods
    name: Autopays
  - description: Create and manage accounts
    name: Accounts
  - description: |
      Requests to create and manage batch payments
    name: Batch Payments (alpha)
  - description: Billing rates
    name: Billing Rates
  - description: Bank Delinquency Configuration
    name: Bank Delinquency Configuration
  - description: >-
      Rules that map a posted payment transaction (bank/partner + transaction
      attributes) to a regulatory payment code. NULL match columns act as
      wildcards.
    name: Payment Code Configuration
  - description: Create and manage Synctera Pay templates
    name: SyncteraPay
  - description: |
      Manage reward products and reward configs for automated cashback rewards
    name: Reward Products
  - description: Requests to create and manage card disputes
    name: Card Disputes
  - description: >-
      Per bank/partner account-type mapping to FFIEC collateral codes used for
      regulatory call report furnishment.
    name: Collateral Code Configuration
  - description: Bulk card issuance
    name: Bulk Issuance
  - description: Autopay configuration management for lending accounts
    name: Autopay Configs
  - description: Request to create and manage exclusions
    name: Statements
  - description: Create and manage barcodes for in-store cash deposits
    name: In-Store Cash Deposits
  - description: Customer Service Details for disputes and billing inquiries
    name: Customer Service Details
  - description: Create a credit application.
    name: Applications (beta)
  - description: Requests to generate simulated transactions
    name: Card Transaction Simulations
  - description: Billing period summaries
    name: Billing Period Summaries
  - description: Requests to issue and manage cards
    name: Cards
  - description: Push and pull from cards
    name: External Cards
  - description: |
      Requests to create and manage fees
    name: Fees (beta)
paths:
  /cards/images/{card_image_id}/data:
    post:
      tags:
        - Cards
      summary: Upload Card Image
      description: |
        Upload card image data
      operationId: uploadCardImageData
      parameters:
        - $ref: '#/components/parameters/idempotency_key'
        - $ref: '#/components/parameters/card_image_id'
      requestBody:
        content:
          image/jpeg:
            schema:
              format: binary
              type: string
        description: Binary image data
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/card_image_details'
          description: Card image data was successfully uploaded
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
        '500':
          $ref: '#/components/responses/internal_server_error'
components:
  parameters:
    idempotency_key:
      description: >-
        An idempotency key is an arbitrary unique value generated by client to
        detect subsequent retries of the same request. It is recommended that a
        UUID or a similar random identifier be used as an idempotency key. A
        different key must be used for each request, unless it is a retry.
      in: header
      name: Idempotency-Key
      schema:
        example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
        type: string
    card_image_id:
      in: path
      name: card_image_id
      required: true
      schema:
        $ref: '#/components/schemas/card_image_id'
  schemas:
    card_image_details:
      properties:
        card_product_id:
          $ref: '#/components/schemas/card_product_id'
        customer_id:
          $ref: '#/components/schemas/customer_id1'
        id:
          $ref: '#/components/schemas/card_image_id'
        rejection_memo:
          type: string
        rejection_reason:
          $ref: '#/components/schemas/card_image_rejection_reason'
        status:
          $ref: '#/components/schemas/card_image_status'
      required:
        - card_product_id
        - customer_id
        - id
        - status
    card_image_id:
      description: The unique identifier of a card image
      example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
      format: uuid
      type: string
    card_product_id:
      description: The unique identifier of a cards product
      example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
      format: uuid
      type: string
    customer_id1:
      description: The unique identifier of a customer
      example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
      format: uuid
      type: string
    card_image_rejection_reason:
      description: The category of reason that a card image was rejected
      enum:
        - BRANDED
        - COPYRIGHT
        - INAPPROPRIATE
        - OTHER
        - PROMOTIONAL
        - TRADEMARK
      type: string
    card_image_status:
      description: The status of a custom card image
      enum:
        - APPROVED
        - NOT_UPLOADED
        - REJECTED
        - UNREVIEWED
      type: string
    error:
      description: Synctera error responses in API v1 implement a custom error schema.
      properties:
        code:
          description: >
            A machine-readable string that identifies the error for programmatic
            use.
          example: BAD_REQUEST_BODY
          type: string
        detail:
          description: |
            A human-readable string explaining this particular error.
          example: 'Missing required fields: first_name, dob'
          type: string
        status:
          description: HTTP status code for this response
          example: 400
          type: integer
      title: Synctera error response
      type: object
  responses:
    bad_request:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Bad request
    unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unauthorized
    forbidden:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Forbidden
    unprocessable_entity:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unprocessable entity
    internal_server_error:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Internal server error
  securitySchemes:
    bearerAuth:
      bearerFormat: api_key
      scheme: bearer
      type: http

````