154 lines
4.6 KiB
TypeScript
154 lines
4.6 KiB
TypeScript
/**
|
|
* @oas [post] /admin/campaigns
|
|
* operationId: PostCampaigns
|
|
* summary: Create Campaign
|
|
* description: Create a campaign.
|
|
* x-authenticated: true
|
|
* parameters:
|
|
* - name: expand
|
|
* in: query
|
|
* description: Comma-separated relations that should be expanded in the returned data.
|
|
* required: false
|
|
* schema:
|
|
* type: string
|
|
* title: expand
|
|
* description: Comma-separated relations that should be expanded in the returned data.
|
|
* - name: fields
|
|
* in: query
|
|
* description: Comma-separated fields that should be included in the returned data.
|
|
* required: false
|
|
* schema:
|
|
* type: string
|
|
* title: fields
|
|
* description: Comma-separated fields that should be included in the returned data.
|
|
* - name: offset
|
|
* in: query
|
|
* description: The number of items to skip when retrieving a list.
|
|
* required: false
|
|
* schema:
|
|
* type: number
|
|
* title: offset
|
|
* description: The number of items to skip when retrieving a list.
|
|
* - name: limit
|
|
* in: query
|
|
* description: Limit the number of items returned in the list.
|
|
* required: false
|
|
* schema:
|
|
* type: number
|
|
* title: limit
|
|
* description: Limit the number of items returned in the list.
|
|
* - name: order
|
|
* in: query
|
|
* description: Field to sort items in the list by.
|
|
* required: false
|
|
* schema:
|
|
* type: string
|
|
* title: order
|
|
* description: Field to sort items in the list by.
|
|
* security:
|
|
* - api_token: []
|
|
* - cookie_auth: []
|
|
* - jwt_token: []
|
|
* requestBody:
|
|
* content:
|
|
* application/json:
|
|
* schema:
|
|
* $ref: "#/components/schemas/CreateCampaign"
|
|
* x-codeSamples:
|
|
* - lang: Shell
|
|
* label: cURL
|
|
* source: |-
|
|
* curl -X POST '{backend_url}/admin/campaigns' \
|
|
* -H 'x-medusa-access-token: {api_token}' \
|
|
* -H 'Content-Type: application/json' \
|
|
* --data-raw '{
|
|
* "name": "Elwin",
|
|
* "campaign_identifier": "{value}",
|
|
* "starts_at": "2024-11-30T18:47:00.491Z",
|
|
* "ends_at": "2025-02-26T07:41:34.259Z"
|
|
* }'
|
|
* tags:
|
|
* - Campaigns
|
|
* responses:
|
|
* "400":
|
|
* $ref: "#/components/responses/400_error"
|
|
* "401":
|
|
* $ref: "#/components/responses/unauthorized"
|
|
* "404":
|
|
* $ref: "#/components/responses/not_found_error"
|
|
* "409":
|
|
* $ref: "#/components/responses/invalid_state_error"
|
|
* "422":
|
|
* $ref: "#/components/responses/invalid_request_error"
|
|
* "500":
|
|
* $ref: "#/components/responses/500_error"
|
|
* requestBody:
|
|
* content:
|
|
* application/json:
|
|
* schema:
|
|
* type: object
|
|
* required:
|
|
* - name
|
|
* - campaign_identifier
|
|
* - description
|
|
* - currency
|
|
* - budget
|
|
* - starts_at
|
|
* - ends_at
|
|
* - promotions
|
|
* properties:
|
|
* name:
|
|
* type: string
|
|
* title: name
|
|
* description: The campaign's name.
|
|
* campaign_identifier:
|
|
* type: string
|
|
* title: campaign_identifier
|
|
* description: The campaign's campaign identifier.
|
|
* description:
|
|
* type: string
|
|
* title: description
|
|
* description: The campaign's description.
|
|
* currency:
|
|
* type: string
|
|
* title: currency
|
|
* description: The campaign's currency.
|
|
* budget:
|
|
* type: object
|
|
* description: The campaign's budget.
|
|
* required:
|
|
* - type
|
|
* - limit
|
|
* properties:
|
|
* type: {}
|
|
* limit:
|
|
* type: number
|
|
* title: limit
|
|
* description: The budget's limit.
|
|
* starts_at:
|
|
* type: string
|
|
* title: starts_at
|
|
* description: The campaign's starts at.
|
|
* format: date-time
|
|
* ends_at:
|
|
* type: string
|
|
* title: ends_at
|
|
* description: The campaign's ends at.
|
|
* format: date-time
|
|
* promotions:
|
|
* type: array
|
|
* description: The campaign's promotions.
|
|
* items:
|
|
* type: object
|
|
* description: The promotion's promotions.
|
|
* required:
|
|
* - id
|
|
* properties:
|
|
* id:
|
|
* type: string
|
|
* title: id
|
|
* description: The promotion's ID.
|
|
*
|
|
*/
|
|
|