---
updatedAt: 2026-04-06T17:32:29.000Z
agentTools:
  projectIndex: https://docs.pagar.me/v4/llms.txt
---

# Retornando planos

Retorna todos os planos previamente criados levando em consideração os filtros e a paginação

> ❗️ Atenção: Essa versão de API será descontinuada
>
> Essa versão da API Pagar.me já não é mais atualizada e, em breve, deixará de funcionar. Para que sua loja possa vender sem problemas, você precisa realizar sua integração usando a versão mais recente da nossa API, a V5.
>
> No canto superior esquerdo da tela é indicado qual versão da documentação você está vendo. Clique na seta onde indica a versão e altere para a V5 para acessar a documentação.
>
> Se você já é cliente, precisa realizar obrigatoriamente a migração para a versão V5.
>
> Em caso de dúvidas, basta entrar em contato com o nosso time de atendimento através do e-mail, enviando a sua dúvida para <relacionamento@pagar.me> e por telefone, ligando para 4004-1330. Se você já é cliente pode também entrar em contato através do chat dentro da sua Dashboard.

> 📘 Filtros
>
> Todos os filtros mencionados podem ser usados para buscas em ranges usando os prefixos:
>
> | Prefixo | Significado      |
> | ------- | ---------------- |
> | <       | menor que        |
> | >       | maior que        |
> | <=      | menor ou igual a |
> | > =     | maior ou igual a |
>
> Por exemplo,  para buscar em um range de date\_created:
>
> ```shell
> curl -X GET https://api.pagar.me/1/plans \
> -d 'api_key=ak_test_grXijQ4GicOa2BLGZrDRTR5qNQxJW0'
> -d 'date_created=>=1483236000000'
> -d 'date_created=<=1484689847590'
> ```
>
> Para campos que sejam strings, a comparação é lexicográfica, letras maiúsculas sendo 'maiores' que minúsculas.

> 📘 Exemplo de paginação utilizando cursor
>
> A primeira requisição da paginação não contém o parâmetro cursor visto que ainda nenhum token foi retornado. Segue abaixo o exemplo da primeira requisição:
>
> ```shell
> curl -X GET https://api.pagar.me/1/plans \
> -d 'api_key=SUA_API_KEY'
> ```
>
> No retorno da requisição anterior, será retornado nos headers da resposta os parâmetros x-cursor-previouspagr e x-cursor-nextpage, onde o primeiro será vazio (porque não existe uma pagina anterior no momento) e o segundo conterá o Token de acesso a próxima página.
>
> Dito isto, para acessar a próxima página da listagem, devemos informar dentro do campo cursor o Token retornado no parâmetro x-cursor-nextpage da resposta, como mostra a requisição abaixo:
>
> ```shell
> curl -X GET https://api.pagar.me/1/plans \
> -d 'api_key=SUA_API_KEY'
> -d 'cursor=TOKEN_RETORNADO_NO_CURSOR_NEXTPAGE'
> ```
>
> Para ir avançando para as próximas páginas da listagem, basta ir substituindo o Token passado no parâmetro cursor pelo Token retornado em casa resposta da requisição.
>
> Para consultar a página anterior de uma listagem seguimos a mesma estrutura, onde o que muda é apenas o Token informado no parâmetro cursor, como mostra o exemplo abaixo:
>
> ```shell
> curl -X GET https://api.pagar.me/1/plans \
> -d 'api_key=SUA_API_KEY'
> -d 'cursor=TOKEN_RETORNADO_NO_CURSOR_PREVIOUSPAGE'
> ```

> 🚧 Filtros de data
>
> É importante notar que a filtragem por data utiliza unixTimeStamp para representá-la. Para gerar o unixTimeStamp de uma data, é possível utilizar o console do Google Chrome e utilizar o seguinte código em Javascript : `new Date("2017-12-25T02:00:00.000Z").getTime()` que retornará `1514167200000`

> 🚧 Rate Limit
>
> Essa rota possui um limite de requisições.\
> Caso você ultrapasse esse valor será retornado o erro “**StatusCode 429**” por nossa API.
>
> Para saber qual o limite dessa e demais rotas acesse : [Rate Limit](https://docs.pagar.me/docs/rate-limit)

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "api-settings",
    "version": "4"
  },
  "servers": [
    {
      "url": "https://api.pagar.me/1"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "x-default": "",
        "type": "apiKey",
        "name": "api_key",
        "in": "query"
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/plans": {
      "get": {
        "summary": "Retornando planos",
        "description": "Retorna todos os planos previamente criados levando em consideração os filtros e a paginação",
        "operationId": "retornando-planos",
        "parameters": [
          {
            "name": "count",
            "in": "query",
            "description": "Retorna `n` objetos de plano, com um máximo de 1000",
            "schema": {
              "type": "string",
              "default": "10"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "description": "Útil para implementação de uma paginação de resultados, permitindo a troca de páginas utilizando `x-cursor-nextpage` ou `x-cursor-previouspage`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-cursor-nextpage",
            "in": "query",
            "description": "Retornado nos headers da resposta contém o `Token` que permite acesso a próxima página.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-cursor-previouspage",
            "in": "query",
            "description": "Retornado nos headers da resposta contém o `Token` que permite acesso a página anterior.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "Filtro de id",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "amount",
            "in": "query",
            "description": "Filtro de valor do plano",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "days",
            "in": "query",
            "description": "Filtro de 'days' do plano",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Filtro de nome do plano",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "trial_days",
            "in": "query",
            "description": "Filtro de quantidade de dias de trial do plano",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "date_created",
            "in": "query",
            "description": "Filtro da data de criação do plano",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "created_at",
            "in": "query",
            "description": "Alias de date_created",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "[\n  {\n    \"object\": \"plan\",\n    \"id\": 164526,\n    \"amount\": 15000,\n    \"days\": 30,\n    \"name\": \"The Pro Plan - Platinum  - Best Ever\",\n    \"trial_days\": 0,\n    \"date_created\": \"2017-06-09T22:43:08.048Z\",\n    \"payment_methods\": [\n      \"boleto\",\n      \"credit_card\"\n    ],\n    \"color\": null,\n    \"charges\": null,\n    \"installments\": 1,\n    \"invoice_reminder\": null\n  },\n  {\n    \"object\": \"plan\",\n    \"id\": 164252,\n    \"amount\": 1000000,\n    \"days\": 30,\n    \"name\": \"The Pro Plan - Platinum Boleto\",\n    \"trial_days\": 0,\n    \"date_created\": \"2017-06-09T12:34:50.211Z\",\n    \"payment_methods\": [\n      \"boleto\"\n    ],\n    \"color\": null,\n    \"charges\": null,\n    \"installments\": 1,\n    \"invoice_reminder\": null\n  },\n  {\n    \"object\": \"plan\",\n    \"id\": 163871,\n    \"amount\": 500000,\n    \"days\": 30,\n    \"name\": \"The Pro Plan - Susan\",\n    \"trial_days\": 0,\n    \"date_created\": \"2017-06-07T14:00:23.871Z\",\n    \"payment_methods\": [\n      \"credit_card\"\n    ],\n    \"color\": null,\n    \"charges\": null,\n    \"installments\": 12,\n    \"invoice_reminder\": null\n  }\n]"
                  }
                },
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "object": {
                        "type": "string",
                        "example": "plan"
                      },
                      "id": {
                        "type": "integer",
                        "example": 164526,
                        "default": 0
                      },
                      "amount": {
                        "type": "integer",
                        "example": 15000,
                        "default": 0
                      },
                      "days": {
                        "type": "integer",
                        "example": 30,
                        "default": 0
                      },
                      "name": {
                        "type": "string",
                        "example": "The Pro Plan - Platinum  - Best Ever"
                      },
                      "trial_days": {
                        "type": "integer",
                        "example": 0,
                        "default": 0
                      },
                      "date_created": {
                        "type": "string",
                        "example": "2017-06-09T22:43:08.048Z"
                      },
                      "payment_methods": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "example": "boleto"
                        }
                      },
                      "color": {},
                      "charges": {},
                      "installments": {
                        "type": "integer",
                        "example": 1,
                        "default": 0
                      },
                      "invoice_reminder": {}
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "400",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{}"
                  }
                },
                "schema": {
                  "type": "object",
                  "properties": {}
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-readme": {
          "code-samples": [
            {
              "language": "curl",
              "code": "curl -X GET https://api.pagar.me/1/plans -H 'content-type: application/json' -d '{\n    \"api_key\": \"SUA_API_KEY\", \n    \"count\": \"10\", \n    \"page\": \"1\"\n}'"
            },
            {
              "language": "ruby",
              "code": "require 'pagarme'\n\nPagarMe.api_key = \"SUA_API_KEY\"\n\nplans = PagarMe::Plan.all(1, 10)"
            },
            {
              "language": "php",
              "code": "<?php\nrequire(\"vendor/autoload.php\");\n$pagarme = new PagarMe\\Client('SUA_CHAVE_DE_API');\n\n$plans = $pagarme->plans()->getList();"
            },
            {
              "language": "csharp",
              "code": "PagarMeService.DefaultApiKey = \"SUA_API_KEY\";\n\nvar plans = PagarMeService.GetDefaultService().Plans.FindAll(new Plan());"
            },
            {
              "language": "java",
              "code": "import java.util.Collection;\n\nimport me.pagar.model.PagarMe;\nimport me.pagar.model.PagarMeException;\nimport me.pagar.model.Plan;\n\nPagarMe.init(\"SUA_API_KEY\");\n\nCollection<Plan> plans = new Plan().findCollection(10, 1);"
            },
            {
              "language": "javascript",
              "code": "const pagarme = require('pagarme')\n  \npagarme.client.connect({ api_key: 'SUA_API_KEY' })\n  .then(client => client.plans.all({ count: 10, page: 1 }))\n  .then(plans => console.log(plans))",
              "name": "JS"
            },
            {
              "language": "python",
              "code": "import pagarme\n\npagarme.authentication_key('SUA_API_KEY')\n\nprint(pagarme.plan.find_all())"
            }
          ],
          "samples-languages": [
            "curl",
            "ruby",
            "php",
            "csharp",
            "java",
            "javascript",
            "python"
          ]
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```