1. Scripts
Barrack API Documentation
  • Platform Documentation
    • Getting Started
    • Authentication & Access
    • Account Management
    • API Keys
    • GPU Models
    • Regions
    • Instance
      • OS Images
      • Bootsource Management
      • Deploy Instance
      • Instance Management
      • Hibernation
      • View Instances
    • Billing
      • Credit Depletion & Resource Protection
    • SSH Keys
      • Add SSH Keys
      • Manage SSH Keys
      • Connecting to Your VM via SSH
    • Volumes
      • Overview
      • Create Volume
      • List and View Volumes
      • Attach Volumes
      • Detach Volumes
      • Clone Volumes
      • Resize Volume
      • Delete Volume
    • Advanced Configurations
      • Network And Security
      • Cloudinit Script
      • Startup Script
    • Firewall
      • Manage Firewall
      • Rules and Attachment
    • Snapshot
      • Overview
      • Manage Snapshots
      • Restore Snapshots
    • Custom Images
      • Overview
      • Create and Manage Images
  • Balance
    • Get credit balance
      GET
  • Deploy Instance
    • Create a new instance
      POST
  • Pricing
    • Get pricing information
      GET
    • Get pricing information
      POST
  • Instances
    • List instances
      GET
    • Delete instance
      DELETE
    • Hibernate instance
      POST
    • Reboot instance
      POST
    • Restore hibernated instance
      POST
    • Start instance
      POST
    • Stop instance
      POST
    • Toggle public IP for instance
      POST
    • Get instance details
      GET
    • Get firewalls attached to instance
      GET
    • Add instance security rule
      POST
    • Remove instance security rule
      DELETE
    • Get instance billing
      GET
    • List Instance eligible for snapshot creation
      GET
  • SSH Keys
    • List SSH keys
    • Create SSH key
    • Get SSH key
    • Delete SSH key
  • Volumes
    • Attach volumes to instance
    • Detach volumes from instance
    • List volumes
    • Create volume
    • Get volume details
    • Delete volume
    • Clone volume
    • Resize volume
    • Get volume billing
    • List available volume types
  • Scripts
    • List all startup scripts
      GET
    • Create a startup script
      POST
    • Get startup script details
      GET
    • Update a startup script
      PUT
    • Delete a startup script
      DELETE
    • Delete multiple startup scripts
      DELETE
  • Snapshots
    • Create snapshot
    • List snapshots
    • Get snapshot details
    • Delete snapshot
    • Restore snapshot
    • Get snapshot billing
  • Images
    • List custom images
    • Get image details
    • Delete custom image
    • List OS images
    • Create image from snapshot
    • Get snapshot-image relationship
    • Get snapshot-image relationship list
  • Firewalls
    • List firewalls
    • Get firewall details
    • Attach firewall to instances
    • Delete firewall
    • Remove firewall rule
    • Add firewall rule
    • Create firewall
    • List instances available for firewall attachment
    • Get supported protocols
  • GPU Stocks
    • Get GPU stock availability
  • GPU Specs
    • Get GPU specifications
  • Regions
    • List available regions
  • Schemas
    • AddFirewallRuleRequest
    • APIKeyResponse
    • AddFirewallRuleResponse
    • AddVMSecurityRuleResponse
    • AttachFirewallRequest
    • AggregatedBillingResponse
    • AttachFirewallResponse
    • AttachVolumesRequest
    • AttachVolumesResponse
    • AttachedFirewall
    • BatchSnapshotImageRelationshipResponse
    • Balance
    • Billing
    • ChatCompletionsRequest
    • ChatCompletionsResponse
    • CloneVolumeRequest
    • BillingRecord
    • BillingBreakdown
    • CloneVolumeResponse
    • BillingSummary
    • CreateFirewallRequest
    • CreateFirewallResponse
    • BootSourceEnum
    • CreateImageFromSnapshotRequest
    • BulkDeleteResponse
    • CreateSSHKeyRequest
    • CreateScriptRequest
    • CreateSnapshotRequest
    • CreateSnapshotResponse
    • CreateSSHKeyResponse
    • ComputeBilling
    • CurrencyEnum
    • Data
    • CreditBalanceResponse
    • CreateAPIKeyRequest
    • DeleteFirewallResponse
    • CreateVolumeRequest
    • CreateAPIKeyRequestTierEnum
    • DeleteSnapshotResponse
    • CreateVolumeResponse
    • CreateAPIKeyResponse
    • DeleteVMResponse
    • DetachVolumesRequest
    • DetachVolumesResponse
    • DeploymentRequest
    • DirectionEnum
    • DeploymentResponse
    • CreateSnapshotData
    • EthertypeEnum
    • ErrorResponse
    • FirewallAttachment
    • DeleteVolumeResponse
    • DeleteSSHKeyResponse
    • FirewallEnvironment
    • FirewallResponse
    • FirewallRule
    • FirewallVM
    • DataVolumeBilling
    • GetBatchSnapshotImageRelationshipsRequest
    • GetFirewallDetailsResponse
    • GPUStockConfiguration
    • GPUSpec
    • GetHibernatedVMsResponse
    • GPUStockItem
    • GPUSpecsResponse
    • GetSupportedProtocolsResponse
    • GPUStocksResponse
    • GetVMAttachedFirewallsResponse
    • DeploymentData
    • DeleteAPIKeyResponse
    • GetVolumeTypesResponse
    • HibernateVMResponse
    • HibernationBillingMetrics
    • ListFirewallsResponse
    • ListUserVMsResponse
    • ListVMsResponse
    • DeploymentDataStatusEnum
    • ModelsResponse
    • GetSSHKeysResponse
    • Pagination
    • PricingRequest
    • OSImage
    • Deposit
    • PricingResponse
    • OSImagesResponse
    • DepositStatusEnum
    • Protocol
    • GpuCountEnum
    • FirewallInstance
    • ProtocolEnum
    • Image
    • GpuModelEnum
    • GetVolumeDetailsResponse
    • RebootVMResponse
    • ImageCreateResponse
    • RecentHibernation
    • ImageDeleteResponse
    • GetVolumesWithNextNameResponse
    • RemoveFirewallRuleResponse
    • ImageDetailResponse
    • RemoveVMSecurityRuleResponse
    • Region
    • ImageListResponse
    • ResizeVolumeRequest
    • RegionsResponse
    • Price
    • ResizeVolumeResponse
    • ResourceTypeEnum
    • RestoreSnapshotRequest
    • RestoreSnapshotResponse
    • GetSSHKeyDetailResponse
    • RestoreVMResponse
    • Snapshot
    • SnapshotImageRelationshipResponse
    • GetSnapshotDetailsResponse
    • Specs
    • StartVMResponse
    • GpuBilling
    • StopVMResponse
    • TierEnum
    • UpdateScriptRequest
    • UsageHistoryResponse
    • UsageSummaryResponse
    • RegionEnum
    • UserVM
    • VMDetailsResponse
    • VMFlavor
    • InstanceFeatures
    • VMImage
    • InstanceSpecs
    • VMInstance
    • IpStatusEnum
    • VMResponse
    • SpecsMetadata
    • VMSecurityRule
    • VMSecurityRuleRequest
    • VMStatus
    • VMVolumeAttachment
    • Script
    • ListFirewallInstancesResponse
    • VolumeTypeEnum
    • SSHKeyResponse
    • ScriptListResponse
    • OsVolume
    • ListSnapshotsResponse
    • ListVMsForSnapshotResponse
    • ListAPIKeysResponse
    • PricingRequestVolumeTypeEnum
    • ToggleVMPublicIPResponse
    • PatchedDeposit
    • PatchedTransaction
    • PaymentMethodEnum
    • VolumeBillingRecord
    • VolumeBillingSummary
    • VolumeHourlyBillingResponse
    • SecurityRule
    • ScriptCreateResponse
    • RestoreSnapshotData
    • ScriptDeleteResponse
    • ScriptDetailResponse
    • VolumeResponse
    • ScriptUpdateResponse
    • StatusEnum
    • StorageBilling
    • SnapshotBillingRecord
    • SnapshotBillingResponse
    • SnapshotBillingSummary
    • SnapshotDetail
    • SnapshotListItem
    • SnapshotVMResponse
    • Tier528Enum
    • TokenObtainPair
    • TokenRefresh
    • Transaction
    • VolumeCreate
    • TransactionTypeEnum
    • VolumeCreateVolumeTypeEnum
    • VolumeRate
    • UserProfile
    • VMDetailVolumeAttachment
    • VMOperations
    • VMSpecs
    • VolumeTypeItem
    • VolumeTypesByTier
  1. Scripts

Create a startup script

POST
/scripts/
Creates a new startup script for the authenticated user. Script names must be unique per user and contain only alphanumeric characters, spaces, hyphens, underscores, and dots. Script content is limited to 16KB.

Request

Authorization
API Key
Add parameter in header
X-API-Key
Example:
X-API-Key: ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢201
application/json
Script created successfully
Body

🟠400
🟠401
🔴500
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://barrack.ai/api/scripts/' \
--header 'X-API-Key: <api-key>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "string",
    "script": "string"
}'
Response Response Example
201 - Create Script Success
{
    "success": true,
    "message": "Script created successfully",
    "code": "SCRIPT_CREATED",
    "script": {
        "id": "SC789012",
        "name": "my-startup-script",
        "script": "#!/bin/bash\necho 'Hello World'\napt-get update",
        "created_at": "2025-01-12T10:30:00Z"
    },
    "metadata": {
        "script_size_limit_bytes": 16384
    },
    "tier": "advanced"
}
Previous
List all startup scripts
Next
Get startup script details
Built with