contacts

Telephone

United States

dropdown button

United States

Canada

United Kingdom

Spain

France

Italy

Germany

Australia

+1 (800) 815 - 9959

10:00 AM - 5:00 PM (EST/EDT)

Monday - Friday

mobile-menu

Projects

divider Last updated: July 5, 2024

ProjectsList

This request allows you to get a list of all projects.

Request parameters
Name Value/Type Description

* Fields marked by an asterisk (*) are required

Response parameters
Name Value/Type Description
projects object

* Fields marked by an asterisk (*) are required

Endpoint (GET)

Copy code

https://api.semrush.com/apis/v4/projects/v0

Response example

Copy code

{
  "projects": [
    {
      "url": "mysite.com",
      "domain_unicode": "mysite.com",
      "tools": [],
      "project_id": 643526670,
      "project_name": "myproject",
      "owner_id": 123456780,
      "permission": [
        "OWNER"
      ]
    }
  ]
}

GetProject

This request allows you to get information regarding a project.

Request parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for the project.

* Fields marked by an asterisk (*) are required

Response parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for the project.

project_name string

The name of the project.

url string

The domain the project is set up for.

tools object

List of project tools set up in the project.

owner_id uint64

The user ID number of the project's owner.

permission string

The project permissions the user making the API call has. Could be: "OWNER", "READ", "WRITE", "CORP_ADMIN_READ", "CORP_ADMIN_WRITE".

domain_unicode string

The domain the project is set up for, in Unicode.

* Fields marked by an asterisk (*) are required

Endpoint (GET)

Copy code

https://api.semrush.com/apis/v4/projects/v0/:project_id

Request example

Copy code

project_id=643526670283248

Response example

Copy code

{
  "url": "mysite.com",
  "domain_unicode": "mysite.com",
  "tools": [
    {
      "tool": "tracking"
    }
  ],
  "project_id": 643526670283248,
  "project_name": "myproject",
  "owner_id": 123456780,
  "permission": [
    "OWNER"
  ]
}

CreateProject

This request allows you to create a new project, which includes naming the project and choosing a domain.

Request parameters
Name Value/Type Description
project_name string

The name the project will have. Cannot contain the following special symbols: ~`!#%'^&*=[]\/{}|":<>?

url string

The domain the project will be set up for.

* Fields marked by an asterisk (*) are required

Response parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for the project.

project_name string

The name of the project.

url string

The domain the project is set up for.

tools object

List of project tools set up in the project.

owner_id uint64

The user ID number of the project's owner.

permission string

The project permissions the user making the API call has. Could be: "OWNER", "READ", "WRITE", "CORP_ADMIN_READ", "CORP_ADMIN_WRITE".

domain_unicode string

The domain the project is set up for, in Unicode.

* Fields marked by an asterisk (*) are required

Endpoint (POST)

Copy code

https://api.semrush.com/apis/v4/projects/v0

Request example

Copy code

{
  "project_name": "",
  "url": ""
}

Response example

Copy code

{
  "url": "mysite.com",
  "domain_unicode": "mysite.com",
  "tools": [],
  "project_id": 643526670283248,
  "project_name": "myproject",
  "owner_id": 123456780,
  "permission": [
    "OWNER"
  ]
}

UpdateProject

This request allows you to update or change a project’s name.

Request parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for the project.

project_name string

The new project name. Cannot contain the following special symbols: ~`!#%'^&*=[]\/{}|":<>?

tools object

This field is used for backward compatibility. Сan be ignored.

* Fields marked by an asterisk (*) are required

Response parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for your project.

project_name string

The name of the project.

url string

The domain the project is set up for.

tools object

List of project tools set up in the project.

owner_id uint64

The user ID number of the project's owner.

permission string

The project permissions the user making the API call has. Could be: "OWNER", "READ", "WRITE", "CORP_ADMIN_READ", "CORP_ADMIN_WRITE".

domain_unicode string

The domain the project is set up for, in Unicode.

* Fields marked by an asterisk (*) are required

Endpoint (PUT)

Copy code

https://api.semrush.com/apis/v4/projects/v0

Request example

Copy code

{
  "project_id": 643526670283248,
  "project_name": "myproject"
}

Response example

Copy code

{
  "url": "mysite.com",
  "domain_unicode": "mysite.com",
  "tools": [
    {
      "tool": "tracking"
    }
  ],
  "project_id": 643526670283248,
  "project_name": "myproject",
  "owner_id": 123456780,
  "permission": [
    "OWNER"
  ]
}

RemoveProject

This request allows you to delete a project from your user account.

Request parameters
Name Value/Type Description
project_id uint64

An automatically generated unique identifier for the project.

* Fields marked by an asterisk (*) are required

Response parameters
Name Value/Type Description
result bool

If a project is successfully deleted, you'll get a true response. If it's not, you'll get an error message.

* Fields marked by an asterisk (*) are required

Endpoint (DELETE)

Copy code

https://api.semrush.com/apis/v4/projects/v0/:project_id

Request example

Copy code

project_id=0

Response example

Copy code

{
  "result": true
}
Was this page helpful?