GenerateUploadConfig

Updated at:

Generates a file upload configuration. 1. Call this API to obtain the upload configuration. The API returns the `PostUrl` (an internal OSS address for AI Writing Assistant), temporary OSS authentication information (`key`, `OSSAccessKeyId`, `Signature`, and `policy`), and the unique file identifier `fileKey`. 2. The client uses the `PostUrl` and the temporary authentication information (`key`, `OSSAccessKeyId`, `Signature`, and `policy`) to upload the file. 3. Use the `fileKey` to call subsequent APIs that require a `fileKey`, such as `GenerateFileUrlByKey`.

Operation description

This API returns the address and credentials for file uploads. For more information, see OSS Form Upload.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.
    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.
  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

aimiaobi:GenerateUploadConfig

create

*All Resource

*

NoneNone

Request parameters

Parameter

Type

Required

Description

Example

AgentKey

string

Yes

The unique identifier of the workspace. For more information, see AgentKey.

xxxxx_p_efm

FileName

string

No

The file name.

test.docx

ParentDir

string

Yes

The parent folder.

  • materialDocument: The Material Library for AI Writing Assistant.

  • datasetUpload: The dataset for AI Search.

  • intervenes: Interventions.

  • temp: A temporary upload folder. Files in this folder are released periodically.

dataset

Response elements

ElementTypeDescriptionExample

object

PlainResult

Code

string

The status code.

successful

Data

object

The business data.

FileKey

string

The unique identifier of the file. You can use this value as a URL for AI Writing Assistant.

oss://default/oss-bucket-name/aimiaobi/2021/07/01/1625126400000/1.docx

FormDatas

object

The credentials for uploading the file to OSS.

{
  "OSSAccessKeyId": "xxx",
  "Signature": "YOUR_SIGNATURE",
  "MaxSize": 31457280,
  "key": "aimiaobi/dataset/2_2/xx.txt",
  "policy": "xxx=="
}

string

PostUrl

string

The address for uploading the file to OSS. This is a dedicated OSS domain name for AI Writing Assistant. The value is fixed to https://aimiaobi-service-prod.oss-cn-beijing.aliyuncs.com/.

https://aimiaobi-service-prod.oss-cn-beijing.aliyuncs.com/

HttpStatusCode

integer

The HTTP status code.

200

Message

string

The error message.

successful

RequestId

string

The unique ID of the request.

1813ceee-7fe5-41b4-87e5-982a4d18cca5

Success

boolean

Indicates whether the request was successful. true indicates success. false indicates failure.

true

Upload the file

After you obtain the PostUrl (the internal OSS for AI Writing Assistant) and FormDatas (temporary OSS authentication) parameters, upload the file to OSS.

NoteThis is the core upload step and is required. After the upload is complete, use the fileKey in subsequent API calls.

The following is a sample cURL request:

NoteThis is a simple cURL example. For software development kit (SDK) integration, you typically write code to upload the file from a form.

curl -X POST --location "${PostUrl}" \
    -H "Content-Type: multipart/form-data; boundary=WebKitFormBoundarykFF1FqdGZn2nxzfb" \
    -F "key=${key};type=*/*" \
    -F "OSSAccessKeyId=YOUR_ACCESS_KEY_ID" \
    -F "Signature=YOUR_SIGNATURE" \
    -F "policy=${policy};type=*/*" \
    -F "file=@/Users/<username>/xxx.text;filename=xxx.text;type=text/plain"

Examples

Success response

JSON format

{
  "Code": "successful",
  "Data": {
    "FileKey": "oss://default/oss-bucket-name/aimiaobi/2021/07/01/1625126400000/1.docx",
    "FormDatas": {
      "key": ""
    },
    "PostUrl": "https://aimiaobi-service-prod.oss-cn-beijing.aliyuncs.com/"
  },
  "HttpStatusCode": 200,
  "Message": "successful",
  "RequestId": "1813ceee-7fe5-41b4-87e5-982a4d18cca5",
  "Success": true
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.