---
title: "Create cache"
method: POST
path: "/caches"
tags: ["Caches"]
---

# Create cache

`POST /caches`

## Request

- Base URL: `https://cloud.laravel.com/api`
- URL: `https://cloud.laravel.com/api/caches`
- Auth: HTTP bearer

Create a new cache.

## Request body

- StoreCacheRequest
  - `type` 'upstash_redis' | 'laravel_valkey' | 'aws_elasticache_redis' | 'aws_elasticache_valkey', required
  - `name` string, required
  - `region` 'us-east-1' | 'us-east-2' | 'ca-central-1' | 'eu-central-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'me-central-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ap-northeast-1', required
  - `size` '250mb' | '1gb' | '2.5gb' | '5gb' | '12gb' | '50gb' | '100gb' | '500gb' | 'valkey-flex-250mb' | 'valkey-flex-1gb' | 'valkey-flex-2.5gb' | 'valkey-pro.250mb' | 'valkey-pro.1gb' | 'valkey-pro.2.5gb' | 'valkey-pro.5gb' | 'valkey-pro.12gb' | 'valkey-pro.25gb' | 'valkey-pro.50gb' | 'elasticache.cache.r7g.large' | 'elasticache.cache.r7g.xlarge' | 'elasticache.cache.r7g.2xlarge' | 'elasticache.cache.r7g.4xlarge' | 'elasticache.cache.r7g.8xlarge' | 'elasticache.cache.r7g.12xlarge' | 'elasticache.cache.r7g.16xlarge' | 'elasticache.cache.c7gn.large' | 'elasticache.cache.c7gn.xlarge' | 'elasticache.cache.c7gn.2xlarge' | 'elasticache.cache.c7gn.4xlarge' | 'elasticache.cache.c7gn.8xlarge' | 'elasticache.cache.c7gn.12xlarge' | 'elasticache.cache.c7gn.16xlarge' | 'elasticache.cache.t4g.micro' | 'elasticache.cache.t4g.small' | 'elasticache.cache.t4g.medium' | 'elasticache.cache.m7g.large' | 'elasticache.cache.m7g.xlarge' | 'elasticache.cache.m7g.2xlarge' | 'elasticache.cache.m7g.4xlarge' | 'elasticache.cache.m7g.8xlarge' | 'elasticache.cache.m7g.12xlarge' | 'elasticache.cache.m7g.16xlarge' | 'elasticache.cache.m8g.large' | 'elasticache.cache.m8g.xlarge' | 'elasticache.cache.m8g.2xlarge' | 'elasticache.cache.m8g.4xlarge' | 'elasticache.cache.m8g.8xlarge' | 'elasticache.cache.m8g.12xlarge' | 'elasticache.cache.m8g.16xlarge' | 'elasticache.cache.r8g.large' | 'elasticache.cache.r8g.xlarge' | 'elasticache.cache.r8g.2xlarge' | 'elasticache.cache.r8g.4xlarge' | 'elasticache.cache.r8g.8xlarge' | 'elasticache.cache.r8g.12xlarge' | 'elasticache.cache.r8g.16xlarge' | 'elasticache.cache.c8gn.large' | 'elasticache.cache.c8gn.xlarge' | 'elasticache.cache.c8gn.2xlarge' | 'elasticache.cache.c8gn.4xlarge' | 'elasticache.cache.c8gn.8xlarge' | 'elasticache.cache.c8gn.12xlarge' | 'elasticache.cache.c8gn.16xlarge', required
  - `auto_upgrade_enabled` boolean, required
  - `is_public` boolean, required
  - `cluster_id` string, nullable
  - `eviction_policy` 'allkeys-lru' | 'noeviction' | 'volatile-lru' | 'allkeys-random' | 'volatile-random' | 'volatile-ttl' | 'allkeys-lfu' | 'volatile-lfu'
  - `uses_hibernation` boolean
  - `hibernation_timeout` union
    - integer
    - string, nullable

## Response `201`

`CacheResource`

- object
  - `data` CacheResource, required
    - `id` string, required
    - `type` 'caches', required
    - `attributes` object
      - `name` string, required
      - `type` 'upstash_redis' | 'laravel_valkey' | 'aws_elasticache_redis' | 'aws_elasticache_valkey', required
      - `status` 'creating' | 'updating' | 'available' | 'stopped' | 'deleting' | 'deleted' | 'unknown', required
      - `region` 'us-east-1' | 'us-east-2' | 'ca-central-1' | 'eu-central-1' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'me-central-1' | 'ap-southeast-1' | 'ap-southeast-2' | 'ap-northeast-1', required
      - `size` '250mb' | '1gb' | '2.5gb' | '5gb' | '12gb' | '50gb' | '100gb' | '500gb' | 'valkey-flex-250mb' | 'valkey-flex-1gb' | 'valkey-flex-2.5gb' | 'valkey-pro.250mb' | 'valkey-pro.1gb' | 'valkey-pro.2.5gb' | 'valkey-pro.5gb' | 'valkey-pro.12gb' | 'valkey-pro.25gb' | 'valkey-pro.50gb' | 'elasticache.cache.r7g.large' | 'elasticache.cache.r7g.xlarge' | 'elasticache.cache.r7g.2xlarge' | 'elasticache.cache.r7g.4xlarge' | 'elasticache.cache.r7g.8xlarge' | 'elasticache.cache.r7g.12xlarge' | 'elasticache.cache.r7g.16xlarge' | 'elasticache.cache.c7gn.large' | 'elasticache.cache.c7gn.xlarge' | 'elasticache.cache.c7gn.2xlarge' | 'elasticache.cache.c7gn.4xlarge' | 'elasticache.cache.c7gn.8xlarge' | 'elasticache.cache.c7gn.12xlarge' | 'elasticache.cache.c7gn.16xlarge' | 'elasticache.cache.t4g.micro' | 'elasticache.cache.t4g.small' | 'elasticache.cache.t4g.medium' | 'elasticache.cache.m7g.large' | 'elasticache.cache.m7g.xlarge' | 'elasticache.cache.m7g.2xlarge' | 'elasticache.cache.m7g.4xlarge' | 'elasticache.cache.m7g.8xlarge' | 'elasticache.cache.m7g.12xlarge' | 'elasticache.cache.m7g.16xlarge' | 'elasticache.cache.m8g.large' | 'elasticache.cache.m8g.xlarge' | 'elasticache.cache.m8g.2xlarge' | 'elasticache.cache.m8g.4xlarge' | 'elasticache.cache.m8g.8xlarge' | 'elasticache.cache.m8g.12xlarge' | 'elasticache.cache.m8g.16xlarge' | 'elasticache.cache.r8g.large' | 'elasticache.cache.r8g.xlarge' | 'elasticache.cache.r8g.2xlarge' | 'elasticache.cache.r8g.4xlarge' | 'elasticache.cache.r8g.8xlarge' | 'elasticache.cache.r8g.12xlarge' | 'elasticache.cache.r8g.16xlarge' | 'elasticache.cache.c8gn.large' | 'elasticache.cache.c8gn.xlarge' | 'elasticache.cache.c8gn.2xlarge' | 'elasticache.cache.c8gn.4xlarge' | 'elasticache.cache.c8gn.8xlarge' | 'elasticache.cache.c8gn.12xlarge' | 'elasticache.cache.c8gn.16xlarge', required
      - `auto_upgrade_enabled` boolean, required
      - `is_public` boolean, required
      - `eviction_policy` 'allkeys-lru' | 'noeviction' | 'volatile-lru' | 'allkeys-random' | 'volatile-random' | 'volatile-ttl' | 'allkeys-lfu' | 'volatile-lfu', required
      - `uses_hibernation` boolean, required
      - `hibernation_timeout` integer, nullable, required
      - `created_at` string, date-time, nullable, required
      - `connection` object, required
        - `hostname` string, nullable, required
        - `port` integer, nullable, required
        - `protocol` 'redis', required
        - union
          - object
            - `username` string, nullable, required
            - union
              - …
          - string[]
    - `relationships` object
      - `environments` object
        - `data` EnvironmentResourceIdentifier[], required
          - `type` 'environments', required
          - `id` string, required
  - `included` EnvironmentResource[]
    - `id` string, required
    - `type` 'environments', required
    - `attributes` object
      - `name` string, required
      - `slug` string, required
      - `status` 'deploying' | 'running' | 'hibernating' | 'stopped', required
      - `color` 'blue' | 'green' | 'orange' | 'purple' | 'red' | 'yellow' | 'cyan' | 'gray', required
      - `created_from_automation` boolean, required
      - `vanity_domain` string, required
      - `framework` 'laravel' | 'symfony' | 'jigsaw' | 'html' | 'php' | 'express' | 'hono' | 'nuxt' | 'next' | 'tanstack' | 'elysia' | 'nestjs' | 'astro' | 'javascript' | 'go' | 'hugo' | 'ruby' | 'rails' | 'jekyll' | 'django' | 'fastapi' | 'flask' | 'pelican' | 'python' | 'java' | 'spring' | 'rust' | 'zola' | 'axum' | 'rocket' | 'actix' | 'warp', required
      - `language` 'html' | 'php' | 'javascript' | 'python' | 'go' | 'ruby' | 'java' | 'rust', required
      - `php_major_version` string, required
      - `serving` string
      - `build_command` string, nullable, required
      - `node_version` '20' | '22' | '24' | '26', required
      - `deploy_command` string, nullable, required
      - `start_command` string, nullable, required
      - `uses_octane` boolean, required
      - `uses_hibernation` boolean, required
      - `hibernation_wake_up_interval` integer, nullable, required
      - `timeout` integer, required: The number of seconds the environment will wait for your application to respond before timing out. Changes take effect on the next deployment.
      - `shutdown_timeout` integer, required: The number of seconds to wait before stopping the previous deployment's compute instances, allowing it to finish processing requests and jobs after a new deployment becomes active. Changes take effect on the next deployment.
      - `uses_push_to_deploy` boolean, required
      - `uses_deploy_hook` boolean, required
      - `resend` object, nullable, required
        - `from_address` string, required
        - `from_name` string, required
        - `key_name` string, required
      - union
        - object
          - `environment_variables` object[], required
            - `key` string, required
            - `value` string, required
        - string[]
      - `network_settings` object, required
        - `cache` object, required
          - `strategy` string, required
        - `response_headers` object, required
          - `frame` string, required
          - `content_type` string, required
          - `hsts` object, required
            - `max_age` integer, required
            - `include_subdomains` boolean, required
            - `preload` boolean, required
        - `firewall` object, required
          - `bot_categories` BotControlCategory[], required
          - `rate_limit` object, required
            - `429` boolean, required
            - `level` 'challenge' | 'throttle' | 'ban', required
            - `per_minute` 100 | 300 | 500 | 750 | 1000, required
            - `4xx` boolean, required
          - `under_attack_mode_started_at` string, required
          - `block_path` boolean, required
        - `content_converter` boolean, required
      - `created_at` string, date-time, nullable, required
    - `relationships` object
      - `application` object
        - `data` ApplicationResourceIdentifier, required
          - `type` 'applications', required
          - `id` string, required
      - `branch` object
        - `data` BranchResourceIdentifier, required
          - `type` 'branches', required
          - `id` string, required
      - `deployments` object
        - `data` DeploymentResourceIdentifier[], required
          - `type` 'deployments', required
          - `id` string, required
      - `currentDeployment` object
        - `data` DeploymentResourceIdentifier, required
          - `type` 'deployments', required
          - `id` string, required
      - `domains` object
        - `data` DomainResourceIdentifier[], required
          - `type` 'domains', required
          - `id` string, required
      - `primaryDomain` object
        - `data` DomainResourceIdentifier, required
          - `type` 'domains', required
          - `id` string, required
      - `instances` object
        - `data` InstanceResourceIdentifier[], required
          - `type` 'instances', required
          - `id` string, required
      - `database` object
        - `data` DatabaseSchemaResourceIdentifier, required
          - `type` 'databaseSchemas', required
          - `id` string, required
      - `cache` object
        - `data` CacheResourceIdentifier, required
          - `type` 'caches', required
          - `id` string, required
      - `buckets` object
        - `data` FilesystemResourceIdentifier[], required
          - `type` 'filesystems', required
          - `id` string, required
      - `websocketApplication` object
        - `data` WebsocketApplicationResourceIdentifier, required
          - `type` 'websocketApplications', required
          - `id` string, required
      - `secrets` object
        - `data` SecretResourceIdentifier[], required
          - `type` 'secrets', required
          - `id` string, required
    - `links` object, required
      - `self` Link, required
        - `href` string, uri, required
        - `rel` string
        - `describedby` string
        - `title` string
        - `type` string
        - `hreflang` union
          - string
          - string[]
        - `meta` object

## Other responses

- `401`: An error
- `403`: Authorization error
- `422`: Validation error

---

[API](https://skmtc.dev/laravel/apis/laravel-cloud.md) - [All operations](https://skmtc.dev/laravel/apis/laravel-cloud/llms.txt) - [OpenAPI document](https://skmtc.dev/laravel/apis/laravel-cloud/revisions/af603f54ff33?raw)
