Projetos

Clonar

Você pode usar esse endpoint para clonar um projeto.

  • Endpoint:
POST https://api.proposalpage.com/projects/<projectId>/clone
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será clonado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/clone'
1

Capa

Você pode usar esse endpoint para gerar/regenerar a capa de um projeto.

  • Endpoint:
GET https://api.proposalpage.com/projects/<projectId>/screenshot
1
  • Resposta:
Status: 200

{}
1
2
3
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que a capa será gerada/regenerada. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XGET -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/screenshot'
1

Criar

Você pode usar esse endpoint para criar um projeto.

  • Endpoint:
POST https://api.proposalpage.com/projects
1
  • Resposta:
Status: 201

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path: Vazio.

    • Cabeçalho:

    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo:
    Nome Tipo Descrição Requerido
    title string Título do projeto. ✔️
    token string Token do projeto.
    fonts array Fontes usadas no projeto.
    publish boolean Se o projeto está publicado ou não
    secure boolean Se projeto é seguro (protegido por senha) ou não.
    password string Senha do projeto.
    blocks array Blocos do projeto.
    currency string Moeda do projeto.
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" -d '{ "title": "Project Title", "blocks": [] }' 'https://api.proposalpage.com/projects'
1

Criar a partir de um Template

Você pode usar esse endpoint para criar um projeto a partir de um template.

  • Endpoint:
POST https://api.proposalpage.com/projects/<templateId>/copy
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    templateId string O id do template do qual o projeto será criado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cb5dfb998e83d001ab9e5e0/copy'
1

Deletar

Você pode usar esse endpoint para excluir um projeto existente.

  • Endpoint:
DELETE https://api.proposalpage.com/projects/<projectId>
1
  • Resposta:
Status: 204 (no-content)
1
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será deletado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XDELETE -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74'
1

Intenção de Aceite

Você pode usar esse endpoint para realizar uma intenção de aceite.

  • Endpoint:
POST https://api.proposalpage.com/projects/<projectId>/accept
1
  • Resposta:
Status: 200

{
  "message": "The token and link to accept the project/proposal has been sent to the customer email",
}
1
2
3
4
5
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto para realização de intenção de aceite. ✔️
    • Cabeçalho: Vazio.

    • Corpo: Vazio.

  • Exemplo:

curl -XPOST -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/accept'
1

Confirmar Aceite

Você pode usar esse endpoint para confirmar a aceitação de um projeto.

  • Endpoint:
POST https://api.proposalpage.com/projects/accept/<acceptToken>
1
  • Resposta:
Status: 200

{
  "message": "The project/proposal has been successfully accepted",
}
1
2
3
4
5
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    acceptToken string O token de aceitação do projeto recebido no email. ✔️
    • Cabeçalho: Vazio.

    • Corpo: Vazio.

  • Exemplo:

curl -XPOST -H "Content-type: application/json" 'https://api.proposalpage.com/projects/accept/28f39ba5-f3fa-38c1-9672-067110134c58'
1

Reverter Aceite

Você pode usar esse endpoint para reverter a aceitação de um projeto.

  • Endpoint:
POST https://api.proposalpage.com/projects/revert-accept/<acceptReversionToken>
1
  • Resposta:
Status: 200

{
  "message": "The project/proposal has been successfully accepted",
}
1
2
3
4
5
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    acceptReversionToken string O token de reversão de aceitação do projeto recebido no email. ✔️
    • Cabeçalho: Vazio.

    • Corpo: Vazio.

  • Exemplo:

curl -XPOST -H "Content-type: application/json" 'https://api.proposalpage.com/projects/revert-accept/28f39ba5-f3fa-38c1-9672-067110134c58'
1

Listar

Você pode usar esse endpoint para listar os projetos da sua conta de forma paginada.

  • Endpoint:
GET https://api.proposalpage.com/projects
1
  • Resposta:
Status: 200

{
  "items": [ projectSchema ],
  "totalItems": 50,
  "page": 1,
  "limit": 10,
  "pages": 5,
  "defaultCover": 'https://s3.amazonaws.com/proposal-page-media/default-ss-img.jpg',
}
1
2
3
4
5
6
7
8
9
10
  • Parâmetros:

    • Path: Vazio.

    • Query String:

    Nome Tipo Descrição Requerido
    page número A página que você deseja listar.
    itemsPerPage número O número de projetos por página.
    title string Filtrar projetos por título (por exemplo: title = 'teste' listará todos os projetos que o título começa com 'teste').
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XGET -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects?page=1&itemsPerPage=10'
1

Senha

Você pode usar esse endpoint para definir uma senha em um projeto.

  • Endpoint:
POST https://api.proposalpage.com/projects/<projectId>/password
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que a senha será atualizada. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo:
    Nome Tipo Descrição Requerido
    password string Senha do projeto. ✔️
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" -d '{ "password": "my-password" }' 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/password'
1

Publicar

Você pode usar esse endpoint para publicar/cancelar a publicação de um projeto.

Quando a requisição é feita, se o projeto está publicado, ele será despublicado e vice-versa.

  • Endpoint:
POST https://api.proposalpage.com/projects/<projectId>/publish
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será publicado/despublicado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/publish'
1

Recuperar

Você pode usar esse endpoint para recuperar um projeto específico da sua conta.

  • Endpoint:
GET https://api.proposalpage.com/projects/<projectId>
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será recuperado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XGET -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74'
1

Proteger

Você pode usar esse endpoint para proteger/desproteger um projeto.

Quando a requisição é feita, se o projeto está protegido, ele será desprotegido e vice-versa.

  • Endpoint:
POST https://api.proposalpage.com/projects/<projectId>/secure
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será protegido/desprotegido. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XPOST -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/secure'
1

Templates

Você pode usar esse endpoint para listar os templates de projetos de forma paginada.

  • Endpoint:
GET https://api.proposalpage.com/projects/templates
1
  • Resposta:
Status: 200

{
  "items": [ projectSchema ],
  "totalItems": 50,
  "page": 1,
  "limit": 10,
  "pages": 5,
  "defaultCover": 'https://s3.amazonaws.com/proposal-page-media/default-ss-img.jpg',
}
1
2
3
4
5
6
7
8
9
10
  • Parâmetros:

    • Path: Vazio.

    • Cabeçalho:

    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo: Vazio.
  • Exemplo:

curl -XGET -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" 'https://api.proposalpage.com/projects/templates'
1

Atualizar

Você pode usar esse endpoint para atualizar um projeto existente.

  • Endpoint:
PUT https://api.proposalpage.com/projects/<projectId>
1
  • Resposta:
Status: 200

{
  "title": "Project Title",
  "fonts": [],
  "publish": false,
  "secure": false,
  "countViews": 0,
  "timeViews": 0,
  "priority": 0,
  "_id": "5cbe31f7372099001a4f0d74",
  "blocks": [ blockSchema ],
  "userId": "5c9cfd2f853c5a000f47a749",
  "accountId": "5c9cfd2f853c5a000f47a748",
  "token": "39d4dbe3-3dd6-3e8f-87b9-5f9dcf3659dc",
  "slug": "project-title",
  "publishURL": "https://app.proposalpage.com/view/5cbe31f7372099001a4f0d74/project-title",
  "createdAt": "2019-04-22T21:28:23.495Z",
  "updatedAt": "2019-04-22T21:28:23.495Z",
  "__v": 0
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que será atualizado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação. ✔️
    • Corpo:
    Nome Tipo Descrição Requerido
    title string Título do projeto.
    token string Token do projeto.
    fonts array Fontes usadas no projeto.
    publish boolean Se o projeto está publicado ou não
    secure boolean Se projeto é seguro (protegido por senha) ou não.
    password string Senha do projeto.
    blocks array Blocos do projeto.
    currency string Moeda do projeto.
  • Exemplo:

curl -XPUT -H 'Authorization: Bearer $TOKEN' -H "Content-type: application/json" -d '{ "title": "Updated Title" }' 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74'
1

Visualizar e Notificar

Você pode usar esse endpoint para atualizar o último tempo de visualização do projeto e enviar email com notificação somente se não for a visualização do proprietário do projeto.

  • Endpoint:
PUT https://api.proposalpage.com/projects/<projectId>/view-and-notify
1
  • Resposta:
Status: 200

{
  "emailSent": true,
}
1
2
3
4
5
  • Parâmetros:

    • Path:
    Nome Tipo Descrição Requerido
    projectId string O id do projeto que está sendo visualizado. ✔️
    • Cabeçalho:
    Nome Tipo Descrição Requerido
    Authorization string Seu Bearer Token obtido no endpoint autenticação.
    • Corpo: Vazio.
  • Exemplo:

curl -XPUT -H "Content-type: application/json" 'https://api.proposalpage.com/projects/5cbe31f7372099001a4f0d74/view-and-notify'
1
Última Atualização: 2019-5-14 17:46:47