← All procedures

s3.multipart.upload

Upload a part in multipart upload

CLI
Package
@procedures/s3 · README
Path
["s3","multipart","upload"]
CLI
mark s3 multipart upload --bucket <string> --key <string> --uploadId <string> --partNumber <number> --body <string>
As data
{"$proc":["s3","multipart","upload"],"input":{}}

Use it

In TypeScript

import { Client, LocalTransport, PROCEDURE_REGISTRY } from "@procedures/client";
import "@procedures/s3"; // registers its procedures

const client = new Client(new LocalTransport({ registry: PROCEDURE_REGISTRY }));
const result = await client.exec(["s3","multipart","upload"], { bucket: "<bucket>", key: "<key>", uploadId: "<uploadId>", partNumber: 1, body: "<body>" });
console.log(JSON.stringify(result));

From the command line

$ mark s3 multipart upload --bucket <string> --key <string> --uploadId <string> --partNumber <number> --body <string>

As data, in a program

{
  "$proc": ["s3", "multipart", "upload"],
  "input": {
    "bucket": "<bucket>",
    "key": "<key>",
    "uploadId": "<uploadId>",
    "partNumber": 1,
    "body": "<body>"
  }
}

Input

FieldTypeRequiredDefaultDescription
bucketstringyesS3 bucket name
keystringyesObject key
uploadIdstringyesUpload ID from init
partNumbernumberyesPart number (1-10000)
bodystringyesPart content - base64 encoded

Output

FieldTypeRequiredDefaultDescription
etagstringyesThe ETag of the part, without quotes: complete takes it
partNumbernumberyesThe part number
JSON Schemas
{
  "input": {
    "type": "object",
    "properties": {
      "bucket": {
        "type": "string",
        "description": "S3 bucket name"
      },
      "key": {
        "type": "string",
        "description": "Object key"
      },
      "uploadId": {
        "type": "string",
        "description": "Upload ID from init"
      },
      "partNumber": {
        "type": "number",
        "minimum": 1,
        "maximum": 10000,
        "description": "Part number (1-10000)"
      },
      "body": {
        "type": "string",
        "description": "Part content - base64 encoded"
      }
    },
    "required": [
      "bucket",
      "key",
      "uploadId",
      "partNumber",
      "body"
    ]
  },
  "output": {
    "type": "object",
    "properties": {
      "etag": {
        "type": "string",
        "description": "The ETag of the part, without quotes: complete takes it"
      },
      "partNumber": {
        "type": "number",
        "description": "The part number"
      }
    },
    "required": [
      "etag",
      "partNumber"
    ],
    "additionalProperties": {}
  }
}