Skip to content

Artists

Endpoints for managing represented artists (for gallery accounts).

POST /v1/artists

Create or update a represented artist. The artist is automatically linked to your gallery.

Required scope: artists:write
Required entity type: gallery

FieldTypeRequiredDescription
namestringArtist’s full name
nationalitystringNationality (e.g., “German”)
birth_yearnumberYear of birth
biographystringArtist biography
external_urlstringLink to the artist’s website

Artist names are normalized to slugs. If an artist with the same normalized name exists, they are updated and linked to your gallery.

Terminal window
curl -X POST https://api.artland.com/v1/artists \
-H "Authorization: Bearer ak_liv...re" \
-H "Content-Type: application/json" \
-d '{
"name": "Maria Schmidt",
"nationality": "German",
"birth_year": 1985,
"biography": "Contemporary abstract artist working with color theory and geometric forms.",
"external_url": "https://mariaschmidt.com"
}'

Response (201):

{
"id": 42,
"name": "Maria Schmidt",
"slug": "maria-schmidt",
"created": true
}

GET /v1/artists

List all artists for the entity bound to your API key.

Required scope: artists:read

ParameterDefaultDescription
page1Page number
limit50Results per page (max: 100)
Terminal window
curl https://api.artland.com/v1/artists \
-H "Authorization: Bearer ak_liv...n**Response (200):**
```json
{
"artists": [
{
"id": 42,
"name": "Maria Schmidt",
"slug": "maria-schmidt",
"nationality": "German",
"birth_year": 1985,
"biography": "Contemporary abstract artist..."
}
],
"total": 8,
"page": 1,
"limit": 50
}

When you push an artwork with artist_name, the system:

  1. Normalizes the artist name
  2. Looks up existing artists by slug
  3. Creates the artist if not found
  4. Links the artwork to the artist
  5. Links the artist to your gallery

This means you can push artworks with artist_name without separately creating the artist first — the system handles it automatically.