CoderPad Interview API

CoderPad Interview API

CoderPad provides a simple API for programmatically creating and managing interview pads. You can use the API to integrate these pads with your internal interview scheduling platform or to get a text dump of an interview after the fact.

CoderPad provides a standard REST API that returns results in JSON format.

Authentication


The API uses a simple HTTP Authorization header to authenticate you. If you visit your settings page, you’ll see your API key (this one is fake):

8af9a3412559d803707937250dc1569d

You can then make requests against the API endpoint like so:

curl -H 'Authorization: Token token="8af9a3412559d803707937250dc1569d"' \
  https://app.coderpad.io/api/pads

The authorization type for Interview is Bearer token:


Errors

The API will always return a top-level JSON object, along with a status code to indicate success or failure. When successful, the API will return an HTTP 200, as well as {status: "OK"}.

When calls are unsuccessful, they return an appropriate HTTP code, as well as something like

{
  "status": "ERROR",
  "message": "Invalid API key"
}

The following is a table of HTTP codes from errors that you can expect to see:

HTTP CodeMessageDescription
200Everything’s good!
400Bad RequestYou sent a malformed request, like a programming language we don’t yet support.
401Invalid API keyYour API key wasn’t tied to a valid account.
403ForbiddenYou don’t have permission to access that resource.
404Resource not foundWe couldn’t find that resource for you… It probably doesn’t exist.
429Over quotaYou’ve exceeded the number of pads your plan allows in a month.

Languages


When a resource contains a language field, it’s value is one of a set list:

  • angular
  • bash
  • c
  • clojure
  • coffeescript
  • cpp
  • csharp
  • django
  • elixir
  • erlang
  • fsharp
  • gin
  • haskell
  • html
  • java
  • javascript
  • julia
  • kotlin
  • lua
  • markdown
  • node
  • objc
  • ocaml
  • perl
  • php
  • plaintext
  • postgresql
  • python
  • rails
  • react
  • ruby
  • rust
  • spring
  • svelte
  • swift
  • tcl
  • typescript
  • vb
  • vue

Did this page help you?