Skip to main content

Request a presigned upload URL for a new Connect Artifact.

POST 

/cam/v1/presigned-upload-url

General Availability

Request a presigned upload URL to upload a Connect Artifact archive.

Request

Responses

Presigned Url.

Response Headers
    X-Request-Id

    The unique identifier for the API request.

    X-RateLimit-Limit

    The maximum number of requests you're permitted to make per time period.

    X-RateLimit-Remaining

    The number of requests remaining in the current rate limit window.

    X-RateLimit-Reset

    The relative time in seconds until the current rate-limit window resets.

    Important: This differs from Github and Twitter's same-named header which uses UTC epoch seconds. We use relative time to avoid client/server time synchronization issues.

OpenAPI definition (YAML)
paths:
  /cam/v1/presigned-upload-url:
    post:
      description: '[![General Availability](https://img.shields.io/badge/Lifecycle%20Stage-General%20Availability-%2345c6e8)](#section/Versioning/API-Lifecycle-Policy)


        Request a presigned upload URL to upload a Connect Artifact archive.'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - type: object
                description: 'Request schema of the presigned upload URL.

                  '
                properties:
                  metadata:
                    allOf:
                    - description: ObjectMeta is metadata that all persisted resources must have, which
                        includes all objects users must create.
                      properties: {}
                      readOnly: true
                      title: ObjectMeta
                    - properties:
                        self:
                          example: https://api.confluent.cloud/cam/v1/presigned-url-requests/pur-12345
                        resource_name:
                          example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/presigned-url-request=pur-12345
                  content_format:
                    type: string
                    example: JAR
                    description: Archive format of the Connect Artifact.
                    enum:
                    - JAR
                    - ZIP
                  cloud:
                    type: string
                    example: AWS
                    description: Cloud provider where the Connect Artifact archive is uploaded.
                    enum:
                    - AWS
                  environment:
                    type: string
                    example: env-00000
                    description: The Environment the uploaded Connect Artifact belongs to.
                    maxLength: 255
                title: cam.v1.PresignedUrlRequest
              - type: object
                required:
                - content_format
                - cloud
                - environment
      x-lifecycle-stage: General Availability
      x-self-access: true
      x-name: cam.v1.PresignedUrl
      operationId: presigned-upload-urlCamV1PresignedUrl
      tags:
      - Presigned Urls (cam/v1)
      security:
      - cloud-api-key: []
      responses:
        '200':
          description: Presigned Url.
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  description: 'Request a presigned upload URL for new Connect Artifact. Note that

                    the URL policy expires in one hour. If the policy expires, you can request

                    a new presigned upload URL.



                    ## The Presigned Urls Model

                    <SchemaDefinition schemaRef="#/components/schemas/cam.v1.PresignedUrl" />'
                  properties:
                    api_version:
                      type: string
                      enum:
                      - cam/v1
                      description: APIVersion defines the schema version of this representation of a resource.
                      readOnly: true
                    kind:
                      type: string
                      description: Kind defines the object this REST resource represents.
                      readOnly: true
                      enum:
                      - PresignedUrl
                    content_format:
                      type: string
                      description: Content format of the Connect Artifact archive.
                      example: JAR
                      readOnly: true
                      enum:
                      - ZIP
                      - JAR
                    cloud:
                      type: string
                      description: Cloud provider where the Connect Artifact archive is uploaded.
                      example: AWS
                      readOnly: true
                      enum:
                      - AWS
                    environment:
                      type: string
                      description: The Environment the uploaded Connect Artifact belongs to.
                      example: env-00000
                      readOnly: true
                    upload_id:
                      type: string
                      description: Unique identifier of this upload.
                      example: e53bb2e8-8de3-49fa-9fb1-4e3fd9a16b66
                      readOnly: true
                    upload_url:
                      type: string
                      format: uri
                      description: Upload URL for the Connect Artifact archive.
                      example: https://confluent-custom-connectors-stag-us-west-2.s3.dualstack.us-west-2.amazonaws.com/
                      readOnly: true
                    upload_form_data:
                      type: object
                      description: Upload form data of the Connect Artifact. All values should be strings.
                      example:
                        bucket: confluent-custom-connectors-stag-us-west-2
                        key: staging/flink-artifact/2f37f0b6-f8da-4e8b-bc5f-282ebb0511be/flink-e53bb2e8-8de3-49fa-9fb1-4e3fd9a16b66/artifact.zip
                        policy: string
                        x-amz-algorithm: AWS4-HMAC-SHA256
                        x-amz-credential: string
                        x-amz-date: 20230725T013857Z
                        x-amz-security-token: string
                        x-amz-signature: string
                      readOnly: true
                  title: cam.v1.PresignedUrl
                - type: object
                  required:
                  - api_version
                  - kind
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
            X-RateLimit-Limit:
              schema:
                type: integer
              description: The maximum number of requests you're permitted to make per time period.
            X-RateLimit-Remaining:
              schema:
                type: integer
              description: The number of requests remaining in the current rate limit window.
            X-RateLimit-Reset:
              schema:
                type: integer
              description: "The relative time in seconds until the current rate-limit window resets. \
                \ \n  \n**Important:** This differs from Github and Twitter's same-named header which\
                \ uses UTC epoch seconds. We use relative time to avoid client/server time synchronization\
                \ issues."
        '400':
          description: Bad Request
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
          content:
            application/json:
              schema:
                type: object
                description: Provides information about problems encountered while performing an operation.
                required:
                - errors
                properties:
                  errors:
                    description: List of errors which caused this operation to fail
                    type: array
                    items:
                      type: object
                      description: Describes a particular error encountered while performing an operation.
                      properties:
                        id:
                          description: A unique identifier for this particular occurrence of the problem.
                          type: string
                          maxLength: 255
                        status:
                          description: The HTTP status code applicable to this problem, expressed as a
                            string value.
                          type: string
                        code:
                          description: An application-specific error code, expressed as a string value.
                          type: string
                        title:
                          description: A short, human-readable summary of the problem. It **SHOULD NOT**
                            change from occurrence to occurrence of the problem, except for purposes of
                            localization.
                          type: string
                        detail:
                          description: A human-readable explanation specific to this occurrence of the
                            problem.
                          type: string
                        source:
                          type: object
                          description: If this error was caused by a particular part of the API request,
                            the source will point to the query string parameter or request body property
                            that caused it.
                          properties:
                            pointer:
                              description: A JSON Pointer [RFC6901] to the associated entity in the request
                                document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
                                field].
                              type: string
                            parameter:
                              description: A string indicating which query parameter caused the error.
                              type: string
                        error_code:
                          type: integer
                          format: int32
                        message:
                          type: string
                          nullable: true
                      additionalProperties: false
                      title: Error
                    uniqueItems: true
                title: Failure
              example:
                errors:
                - id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
                  status: '400'
                  code: invalid_filter
                  title: Invalid Filter
                  detail: The 'delorean' resource can't be filtered by 'num_doors'
                  source:
                    parameter: num_doors
        '401':
          x-summary: Unauthorized
          description: The request lacks valid authentication credentials for this resource.
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
            WWW-Authenticate:
              schema:
                type: string
              description: The unique identifier for the API request.
              example: Basic error="invalid_key", error_description="The API Key is invalid"
          content:
            application/json:
              schema:
                type: object
                description: Provides information about problems encountered while performing an operation.
                required:
                - errors
                properties:
                  errors:
                    description: List of errors which caused this operation to fail
                    type: array
                    items:
                      type: object
                      description: Describes a particular error encountered while performing an operation.
                      properties:
                        id:
                          description: A unique identifier for this particular occurrence of the problem.
                          type: string
                          maxLength: 255
                        status:
                          description: The HTTP status code applicable to this problem, expressed as a
                            string value.
                          type: string
                        code:
                          description: An application-specific error code, expressed as a string value.
                          type: string
                        title:
                          description: A short, human-readable summary of the problem. It **SHOULD NOT**
                            change from occurrence to occurrence of the problem, except for purposes of
                            localization.
                          type: string
                        detail:
                          description: A human-readable explanation specific to this occurrence of the
                            problem.
                          type: string
                        source:
                          type: object
                          description: If this error was caused by a particular part of the API request,
                            the source will point to the query string parameter or request body property
                            that caused it.
                          properties:
                            pointer:
                              description: A JSON Pointer [RFC6901] to the associated entity in the request
                                document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
                                field].
                              type: string
                            parameter:
                              description: A string indicating which query parameter caused the error.
                              type: string
                        error_code:
                          type: integer
                          format: int32
                        message:
                          type: string
                          nullable: true
                      additionalProperties: false
                      title: Error
                    uniqueItems: true
                title: Failure
              example:
                errors:
                - id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
                  status: '401'
                  code: user_unauthenticated
                  title: Authentication Required
                  detail: Valid authentication credentials must be provided
        '403':
          x-summary: Forbidden
          description: The access credentials were considered insufficient to grant access
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
          content:
            application/json:
              schema:
                type: object
                description: Provides information about problems encountered while performing an operation.
                required:
                - errors
                properties:
                  errors:
                    description: List of errors which caused this operation to fail
                    type: array
                    items:
                      type: object
                      description: Describes a particular error encountered while performing an operation.
                      properties:
                        id:
                          description: A unique identifier for this particular occurrence of the problem.
                          type: string
                          maxLength: 255
                        status:
                          description: The HTTP status code applicable to this problem, expressed as a
                            string value.
                          type: string
                        code:
                          description: An application-specific error code, expressed as a string value.
                          type: string
                        title:
                          description: A short, human-readable summary of the problem. It **SHOULD NOT**
                            change from occurrence to occurrence of the problem, except for purposes of
                            localization.
                          type: string
                        detail:
                          description: A human-readable explanation specific to this occurrence of the
                            problem.
                          type: string
                        source:
                          type: object
                          description: If this error was caused by a particular part of the API request,
                            the source will point to the query string parameter or request body property
                            that caused it.
                          properties:
                            pointer:
                              description: A JSON Pointer [RFC6901] to the associated entity in the request
                                document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
                                field].
                              type: string
                            parameter:
                              description: A string indicating which query parameter caused the error.
                              type: string
                        error_code:
                          type: integer
                          format: int32
                        message:
                          type: string
                          nullable: true
                      additionalProperties: false
                      title: Error
                    uniqueItems: true
                title: Failure
              example:
                errors:
                - id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
                  status: '403'
                  code: user_unauthorized
                  title: User Access Unauthorized
                  detail: The user 'mcfly' is not allowed to access the 'delorean' resource without the
                    'plutonium' role.
        '404':
          description: Not Found
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
          content:
            application/json:
              schema:
                type: object
                description: Provides information about problems encountered while performing an operation.
                required:
                - errors
                properties:
                  errors:
                    description: List of errors which caused this operation to fail
                    type: array
                    items:
                      type: object
                      description: Describes a particular error encountered while performing an operation.
                      properties:
                        id:
                          description: A unique identifier for this particular occurrence of the problem.
                          type: string
                          maxLength: 255
                        status:
                          description: The HTTP status code applicable to this problem, expressed as a
                            string value.
                          type: string
                        code:
                          description: An application-specific error code, expressed as a string value.
                          type: string
                        title:
                          description: A short, human-readable summary of the problem. It **SHOULD NOT**
                            change from occurrence to occurrence of the problem, except for purposes of
                            localization.
                          type: string
                        detail:
                          description: A human-readable explanation specific to this occurrence of the
                            problem.
                          type: string
                        source:
                          type: object
                          description: If this error was caused by a particular part of the API request,
                            the source will point to the query string parameter or request body property
                            that caused it.
                          properties:
                            pointer:
                              description: A JSON Pointer [RFC6901] to the associated entity in the request
                                document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
                                field].
                              type: string
                            parameter:
                              description: A string indicating which query parameter caused the error.
                              type: string
                        error_code:
                          type: integer
                          format: int32
                        message:
                          type: string
                          nullable: true
                      additionalProperties: false
                      title: Error
                    uniqueItems: true
                title: Failure
              example:
                errors:
                - id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
                  status: '404'
                  title: Not Found
        '429':
          description: Rate Limit Exceeded
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
            X-RateLimit-Limit:
              schema:
                type: integer
              description: The maximum number of requests you're permitted to make per time period.
            X-RateLimit-Remaining:
              schema:
                type: integer
              description: The number of requests remaining in the current rate limit window.
            X-RateLimit-Reset:
              schema:
                type: integer
              description: "The relative time in seconds until the current rate-limit window resets. \
                \ \n  \n**Important:** This differs from Github and Twitter's same-named header which\
                \ uses UTC epoch seconds. We use relative time to avoid client/server time synchronization\
                \ issues."
            Retry-After:
              schema:
                type: integer
              description: The number of seconds to wait until the rate limit window resets. Only sent
                when the rate limit is reached.
        '500':
          description: Oops, something went wrong!
          headers:
            X-Request-Id:
              schema:
                type: string
              description: The unique identifier for the API request.
          content:
            application/json:
              schema:
                type: object
                description: Provides information about problems encountered while performing an operation.
                required:
                - errors
                properties:
                  errors:
                    description: List of errors which caused this operation to fail
                    type: array
                    items:
                      type: object
                      description: Describes a particular error encountered while performing an operation.
                      properties:
                        id:
                          description: A unique identifier for this particular occurrence of the problem.
                          type: string
                          maxLength: 255
                        status:
                          description: The HTTP status code applicable to this problem, expressed as a
                            string value.
                          type: string
                        code:
                          description: An application-specific error code, expressed as a string value.
                          type: string
                        title:
                          description: A short, human-readable summary of the problem. It **SHOULD NOT**
                            change from occurrence to occurrence of the problem, except for purposes of
                            localization.
                          type: string
                        detail:
                          description: A human-readable explanation specific to this occurrence of the
                            problem.
                          type: string
                        source:
                          type: object
                          description: If this error was caused by a particular part of the API request,
                            the source will point to the query string parameter or request body property
                            that caused it.
                          properties:
                            pointer:
                              description: A JSON Pointer [RFC6901] to the associated entity in the request
                                document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
                                field].
                              type: string
                            parameter:
                              description: A string indicating which query parameter caused the error.
                              type: string
                        error_code:
                          type: integer
                          format: int32
                        message:
                          type: string
                          nullable: true
                      additionalProperties: false
                      title: Error
                    uniqueItems: true
                title: Failure
              example:
                errors:
                - id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
                  status: '500'
                  code: out_of_gas
                  title: DeLorean Out Of Gas
                  detail: The DeLorean has run out of gas, but Doc Brown will fill 'er up for you asap
      servers:
      - url: https://api.confluent.cloud
        description: Confluent Cloud API
      jsonRequestBodyExample:
        content_format: JAR
        cloud: AWS
        environment: env-00000