# Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API

> Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API on Apizie: 37 endpoints (CreateCampaign, CreateGroup, CreateInferenceJob, Creates an outreach plan to reach and recall churned users based on the parameter settings described in this…, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/cloud:aliyun-paiplugin/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `cloud:aliyun-paiplugin`
- Category: Cloud
- Status: byok
- Source: https://api.alibabacloud.com/product/paiplugin
- Page: https://apizie.tech/api/cloud/aliyun-paiplugin
- OpenAPI: https://apizie.tech/api/cloud/aliyun-paiplugin/openapi.json

Alibaba Cloud OpenAPI for Platform for Artificial Intelligence PAI - User Growth (paiplugin, version 2022-01-12). Calls are signed with ACS3-HMAC-SHA256 using your AccessKey ID and secret.

## Endpoints

### CreateCampaign
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-campaign` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Name | string | no | Operational activity name |
| Remark | string | no | Remarks |

### CreateGroup
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-group` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Algorithm | string | no | The associated algorithm. You must specify this parameter if the audience source is an algorithm |
| Column | string | no | Phone number column name. Required when the audience source is a CSV file or MaxCompute and includes phone numbers. |
| Filter | string | no | Filter condition. Optional when the audience source is MaxCompute. |
| InferenceJobId | string | no | Prediction task ID. Required when the audience source is an algorithm. |
| Name | string | no | The audience name |
| PhoneNumber | string | no | Indicates whether the audience contains phone numbers. Audiences containing phone numbers can be used in Reach campaigns. |
| Project | string | no | MaxCompute (ODPS) project name. Required when the audience source is MaxCompute. |
| Remark | string | no | The audience remark |
| Source | integer | no | The audience source. 0: Text. Each line contains one phone number. A maximum of 100 phone numbers is allowed. 1: Text file. Each line… |
| Table | string | no | MaxCompute (ODPS) table name. Required when the audience source is MaxCompute. |
| Text | string | no | Text content. Required when the audience source is text. |
| Uri | string | no | The file URI. You must specify this parameter if the audience source is a text file or a CSV file |

### CreateInferenceJob
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-inference-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Algorithm | string | no | Associated algorithm ID |
| CampaignId | string | no | Associated operational activity ID |
| DataPath | string | no | Prediction data path |
| Name | string | no | Prediction job name |
| Remark | string | no | Remarks |
| TargetPath | string | no | Output data path, which must be an empty folder |
| TrainingJobId | string | no | Associated training job |
| UserConfig | string | no | User configuration |

### Creates an outreach plan to reach and recall churned users based on the parameter settings described in this…
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-schedule` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| AISendEndDate | string | no | The end time for intelligent sending. Specify the time in the YYYY-MM-DD HH:mm:ss format |
| AISendStartDate | string | no | The start time for intelligent sending. Specify the time in the YYYY-MM-DD HH:mm:ss format |
| EndTime | string | no | The end time (UTC+8) |
| ExecuteTime | string | no | The execution time (UTC+8). If this parameter is left empty, the task is executed immediately. If you specify an execution time, you must… |
| GroupId | string | yes | The audience ID. For information about how to obtain the audience ID, see https://help.aliyun.com/document_detail/429068.html |
| Name | string | yes | The name of the outreach plan. The name must be 2 to 30 characters in length and can contain letters, digits, Chinese characters, and… |
| PaymentType | string | no | The billing method. If this parameter is left empty, the pay-as-you-go billing method is used by default. Valid values: PayAsYouGo:… |
| RepeatCycle | integer | no | The repeat cycle. The task is executed based on the repeat cycle and the repeat cycle unit |
| RepeatCycleUnit | integer | no | The unit of the repeat cycle. If an execution time (ExecuteTime) is specified, the task is executed based on the repeat cycle unit. Valid… |
| RepeatTimes | integer | no | The number of repetitions. Valid values: -1: No end time (default). 0: Do not repeat. N: Stop after N repetitions |
| SignName | string | no | The signature name. For information about how to obtain the signature name, see https://help.aliyun.com/document_detail/413410.html |
| SignatureId | string | no | The signature ID. For information about how to obtain the signature ID, see https://help.aliyun.com/document_detail/413410.html |
| TemplateCode | string | no | The template code. For information about how to obtain the template code, see https://help.aliyun.com/document_detail/413414.html |
| TemplateId | string | no | The template ID or template code. For information about how to obtain the template ID, see… |

### CreateSignature
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-signature` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Description | string | no | Request description |
| Name | string | yes | Sign name |

### CreateTemplate
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-template` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Content | string | no | Template content. Note that the total number of characters must not exceed 70. Any excess will be billed as a long text message, with each… |
| Description | string | no | Application description |
| Name | string | no | Template name |
| Signature | string | no | Signature name |
| SignatureId | string | no | Signature ID. You can obtain a list of signatures with the review status set to Pass by calling ListSignatures, and then retrieve the… |
| Type | integer | no | Template type. 0: verification code. 1: notification. 2: promotional message |

### CreateTrainingJob
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-training-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Algorithm | string | no | ID of the associated algorithm |
| CampaignId | string | no | ID of the associated operational activity |
| DataPath | string | no | Training data path |
| Name | string | no | Training job name |
| Remark | string | no | Remarks |
| UserConfig | string | no | User configuration used to set parameters such as start_date and end_date to define the time range of modeling data |

### DeleteCampaign
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-campaign` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | The operational activity ID. You can obtain the ID by calling ListCampaigns to retrieve the operational activity list |

### DeleteGroup
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-group` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Audience ID. You can obtain the audience list by calling ListGroups to get the corresponding ID |

### DeleteInferenceJob
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-inference-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Prediction task ID. You can call ListInferenceJobs to query the list of prediction tasks under your account and obtain the prediction task… |

### You can delete a schedule if your business needs change or you need to cancel a send
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-schedule` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | The schedule ID. For more information, see https://help.aliyun.com/document_detail/429073.html |

### DeleteSignature
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-signature` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | The signature ID. You can call ListSignatures to query the signature list under your account and obtain the signature ID |

### DeleteTemplate
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-template` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | The Template ID. You can call ListTemplates to query the template list under your account and obtain the Template ID |

### DeleteTrainingJob
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/delete-training-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | The training job ID. You can call ListTrainingJobs to query the list of training jobs under your account and obtain the training job ID |

### GetAlgorithm
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-algorithm` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Algorithm ID. You can query currently active algorithms by using ListAlgorithms and use the obtained algorithm ID |

### GetCampaign
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-campaign` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Operational activity ID. You can call ListCampaigns to query the list of operational activities under the account and obtain the… |

### GetGroup
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-group` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Audience ID, which can be obtained by calling ListGroups |

### GetInferenceJob
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-inference-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Prediction job ID. You can call ListInferenceJobs to query the list of prediction jobs under your account and obtain the prediction job ID |

### GetMessageConfig
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-message-config` (byok)

### Retrieves details about a delivery schedule, such as its scheduled time, content, and status
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-schedule` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Delivery schedule ID. To get this ID, see https://help.aliyun.com/document_detail/429073.html |

### GetSignature
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-signature` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Signature ID. You can call ListSignatures to query the signature list under your account and obtain the signature ID |

### GetTemplate
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-template` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Template ID. You can call ListTemplates to query the template list under your account and obtain the Template ID. |

### GetTrainingJob
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-training-job` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Training job ID. For information about how to obtain a training job ID, see https://help.aliyun.com/document_detail/429059.html |

### GetUser
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/get-user` (byok)

### ListAlgorithms
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-algorithms` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | no | Filter by algorithm ID. |
| Name | string | no | Filter by algorithm name. |
| PageNumber | integer | no | Page number, starting from 1. Default value is 1. |
| PageSize | integer | no | Page size. Default value is 10. |

### ListCampaigns
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-campaigns` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Name | string | no | Filter by operational activity name. |
| PageNumber | integer | no | Page number, starting from 1. Default value: 1. |
| PageSize | integer | no | Page size. Default value: 10. |
| Remark | string | no | Filter by operational activity remark. |

### ListGroups
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-groups` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Name | string | no | Audience name filter. |
| PageNumber | integer | no | Page number, starting from 1, default is 1. |
| PageSize | integer | no | Page size, default is 10. |
| PhoneNumber | string | no | Filter by whether the audience includes phone numbers. |
| Remark | string | no | Audience remark filter. |
| Source | integer | no | Source filter. |
| Status | integer | no | Review status filter. |

### Queries the list of prediction tasks
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-inference-jobs` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| CampaignId | string | no | The ID of the associated operational activity used for filtering |
| Name | string | no | The name of the prediction task used for filtering |
| PageNumber | integer | no | The page number. Pages start from 1. Default value: 1 |
| PageSize | integer | no | The number of entries per page. Default value: 10 |
| Remark | string | no | The remark of the prediction task used for filtering |
| Status | integer | no | The status of the prediction task used for filtering. Valid values: 0: Queued. 1: Submitted. 2: Running. 3: Succeeded. 4: Failed |
| CampaignName | string | no | The name of the associated operational activity |
| TrainingJobName | string | no | The name of the training task |

### ListMessageMetrics
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-message-metrics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| EndDate | string | yes | End date, in the format 20220102 |
| GroupId | string | no | Associated Audience ID |
| PageNumber | integer | no | Page number, starting from 1. Default value is 1 |
| PageSize | integer | no | Page size. Default value is 10 |
| ScheduleId | string | no | Associated Reach plan ID |
| Signature | string | no | Signature name |
| SignatureId | string | no | Signature ID. You can specify either the signature name or the signature ID, but not both |
| StartDate | string | yes | Start date, in the format YYYYMMDD (for example, 20220102) |
| TemplateCode | string | no | Template ID |
| TemplateId | string | no | Template ID. You can specify either Template Code or Template ID, but not both |
| TemplateType | integer | no | Template type. 0: verification code. 1: notification. 2: promotional message |

### ListMessages
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Datetime | string | yes | Date of sending, in the format yyyymmdd |
| ErrorCode | string | no | Text message error code filter |
| GroupId | string | no | Filter by associated Audience ID. |
| MessageId | string | no | Text message ID filter. The message ID is the ID returned upon successful execution of SendMessage |
| PageNumber | integer | no | Page number, starting from 1. Default value is 1. |
| PageSize | integer | no | Page size. Default value is 10. |
| PhoneNumber | string | no | Phone number |
| RequestId | string | no | Filter by text message batch processing ID. The batch processing ID is the RequestId returned upon successful SendMessage. |
| ScheduleId | string | no | Associated sending schedule ID. |
| Signature | string | no | Signature name. |
| SignatureId | string | no | Signature ID. You can specify either the signature name or the signature ID, but not both. |
| Status | integer | no | Text message sending status. 0: Sending. 1: Succeeded to Send. 2: Failed to Send. |
| TemplateCode | string | no | Template code. |
| TemplateId | string | no | Template ID. You can specify either the template code or the template ID, but not both |
| TemplateType | integer | no | Filter by template type. 0: Verification code. 1: Notification. 2: Promotional message. |

### Retrieve a list of sending schedules
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-schedules` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Name | string | no | Filter by outreach schedule name |
| PageNumber | integer | no | The page number, starting from 1. The default is 1 |
| PageSize | integer | no | The page size. The default is 10 |
| Status | integer | no | Filter by sending status. 0: Checking. 1: Check successful. 2: Check failed. 3: Sending. 4: Send successful. 5: Send failed |

### ListSignatures
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-signatures` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Name | string | no | Filter by sign name |
| PageNumber | integer | no | Page number. Starts from 1. Default value: 1 |
| PageSize | integer | no | Page size. Default value: 10 |
| Status | integer | no | Filter by sign review status. 0: Under review. 1: Pass. 2: Failed |

### ListTemplates
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-templates` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Content | string | no | Template content filter. |
| Name | string | no | Template name filter. |
| PageNumber | integer | no | Page number, starting from 1. Default value is 1. |
| PageSize | integer | no | Page size. Default value is 10. |
| Status | integer | no | Review status filter. 0: Under review. 1: Pass. 2: Failed. |
| Type | integer | no | Template type filter. 0: Verification code. 1: Notification. 2: Promotional message. |

### ListTrainingJobs
`GET https://apizie.tech/v1/cloud:aliyun-paiplugin/list-training-jobs` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| CampaignId | string | no | Filter by associated operational activity |
| Name | string | no | Filter by training job name. |
| PageNumber | integer | no | The page number of the training job list. Starts from 1. Default value is 1 |
| PageSize | integer | no | The number of training jobs to display per page in a paged query. Default value is 10 |
| Remark | string | no | Filter by training job remark. |
| Status | integer | no | Filter by training job status. Valid values: 0: In queue. 1: Submitted. 2: Running. 3: Succeeded. 4: Failed |
| TrainingScheduleId | string | no | Filter by associated training schedule |
| CampaignName | string | no | Name of the associated operational activity |

### Sends text messages. You must register a signature and a template before use
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/send-message` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| GroupId | string | no | The group ID, which is used to associate a group |
| OutIds | array | no | The external extension field. Example: ["1234567890"] |
| PaymentType | string | no | The billing method. If you leave this parameter empty, the default value PayAsYouGo is used. Valid values: PayAsYouGo: pay-as-you-go… |
| PhoneNumbers | array | no | The phone numbers. Each phone number corresponds to a template variable, an upstream extension code, and an external extension field. You… |
| ScheduleId | string | no | The sending schedule ID, which is used to associate a sending schedule |
| SignName | string | no | The name of the signature |
| SignatureId | string | no | The ID of the signature. You can specify either the signature name or the signature ID at a time |
| SmsUpExtendCodes | array | no | The SMS upstream extension codes. Example: ["1234567890"] |
| TemplateCode | string | no | The code of the template |
| TemplateId | string | no | The ID of the template. You can specify either the template code or the template ID at a time |
| TemplateParams | array | no | The actual values of the SMS template variables in JSON format. You can pass multiple parameters. Example: [{"name":"Zhang… |

### UpdateCampaign
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/update-campaign` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Id | string | yes | Operational activity ID. You can call ListCampaigns to query the list of operational activities under your account and obtain the… |
| Name | string | no | Operational activity name |
| Remark | string | no | Remark |

### version
`POST https://apizie.tech/v1/cloud:aliyun-paiplugin/version` (byok)

## Example
```
curl "https://apizie.tech/v1/cloud:aliyun-paiplugin/create-campaign" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API?
Create a free Apizie key, then send POST https://apizie.tech/v1/cloud:aliyun-paiplugin/create-campaign with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth itself also needs your own key from aliyuncs.com.

### Can AI agents use the Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key cloud:aliyun-paiplugin.

### What is the status of the Alibaba Cloud Platform for Artificial Intelligence PAI - User Growth API?
Needs your own provider key (bring your own key)
