// Code generated by go-swagger; DO NOT EDIT.

package restapi

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"encoding/json"
)

var (
	// SwaggerJSON embedded version of the swagger document used at generation time
	SwaggerJSON json.RawMessage
	// FlatSwaggerJSON embedded flattened version of the swagger document used at generation time
	FlatSwaggerJSON json.RawMessage
)

func init() {
	SwaggerJSON = json.RawMessage([]byte(`{
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "schemes": [
    "http"
  ],
  "swagger": "2.0",
  "info": {
    "description": "A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata",
    "title": "fatcat",
    "version": "0.1.0"
  },
  "host": "api.fatcat.wiki",
  "basePath": "/v0",
  "paths": {
    "/creator": {
      "post": {
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "created",
            "schema": {
              "$ref": "#/definitions/entity_edit"
            }
          },
          "400": {
            "description": "bad request",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/creator/lookup": {
      "get": {
        "parameters": [
          {
            "type": "string",
            "name": "orcid",
            "in": "query",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "find a single creator by external identifer",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          },
          "404": {
            "description": "no such creator",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/creator/{id}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch a single creator by id",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          },
          "404": {
            "description": "no such creator",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editgroup": {
      "post": {
        "responses": {
          "201": {
            "description": "successfully created",
            "schema": {
              "$ref": "#/definitions/editgroup"
            }
          },
          "400": {
            "description": "invalid request parameters",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/editgroup/{id}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch editgroup by identifier",
            "schema": {
              "$ref": "#/definitions/editgroup"
            }
          },
          "404": {
            "description": "no such editgroup",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "integer",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editgroup/{id}/accept": {
      "post": {
        "responses": {
          "200": {
            "description": "merged editgroup successfully (\"live\")",
            "schema": {
              "$ref": "#/definitions/success"
            }
          },
          "400": {
            "description": "editgroup is in an unmergable state",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "404": {
            "description": "no such editgroup",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "integer",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editor/{username}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch generic information about an editor",
            "schema": {
              "$ref": "#/definitions/editor"
            }
          },
          "404": {
            "description": "username not found",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "username",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editor/{username}/changelog": {
      "get": {
        "responses": {
          "200": {
            "description": "find changes (editgroups) by this editor which have been merged",
            "schema": {
              "$ref": "#/definitions/changelogentry"
            }
          },
          "404": {
            "description": "username not found",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "username",
          "in": "path",
          "required": true
        }
      ]
    }
  },
  "definitions": {
    "changelogentry": {
      "type": "object",
      "required": [
        "index"
      ],
      "properties": {
        "editgroup_id": {
          "type": "integer"
        },
        "index": {
          "type": "integer"
        },
        "timestamp": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "creator_entity": {
      "type": "object",
      "properties": {
        "ident": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "orcid": {
          "type": "string"
        },
        "redirect": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        },
        "state": {
          "type": "string",
          "enum": [
            "wip",
            "active",
            "redirect",
            "deleted"
          ]
        }
      }
    },
    "editgroup": {
      "type": "object",
      "required": [
        "id",
        "editor_id"
      ],
      "properties": {
        "editor_id": {
          "type": "integer"
        },
        "id": {
          "type": "integer"
        }
      }
    },
    "editor": {
      "type": "object",
      "required": [
        "username"
      ],
      "properties": {
        "username": {
          "type": "string"
        }
      }
    },
    "entity_edit": {
      "type": "object",
      "properties": {
        "editgroup_id": {
          "type": "integer"
        },
        "id": {
          "type": "integer"
        },
        "ident": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        }
      }
    },
    "error": {
      "type": "object",
      "required": [
        "message"
      ],
      "properties": {
        "message": {
          "type": "string"
        }
      }
    },
    "release_entity": {
      "type": "object",
      "required": [
        "ident",
        "state"
      ],
      "properties": {
        "ident": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "orcid": {
          "type": "string"
        },
        "redirect": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        },
        "state": {
          "type": "string",
          "enum": [
            "wip",
            "active",
            "redirect",
            "deleted"
          ]
        }
      }
    },
    "success": {
      "type": "object",
      "required": [
        "message"
      ],
      "properties": {
        "message": {
          "type": "string"
        }
      }
    }
  },
  "x-entity-edit-props": {
    "editgroup_id": {
      "type": "integer"
    },
    "id": {
      "type": "integer"
    },
    "ident": {
      "type": "string"
    },
    "revision": {
      "type": "integer"
    }
  },
  "x-entity-props": {
    "ident": {
      "type": "string"
    },
    "redirect": {
      "type": "string"
    },
    "revision": {
      "type": "integer"
    },
    "state": {
      "enum": [
        "wip",
        "active",
        "redirect",
        "deleted"
      ],
      "type": "string"
    }
  }
}`))
	FlatSwaggerJSON = json.RawMessage([]byte(`{
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "schemes": [
    "http"
  ],
  "swagger": "2.0",
  "info": {
    "description": "A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata",
    "title": "fatcat",
    "version": "0.1.0"
  },
  "host": "api.fatcat.wiki",
  "basePath": "/v0",
  "paths": {
    "/creator": {
      "post": {
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "created",
            "schema": {
              "$ref": "#/definitions/entity_edit"
            }
          },
          "400": {
            "description": "bad request",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/creator/lookup": {
      "get": {
        "parameters": [
          {
            "type": "string",
            "name": "orcid",
            "in": "query",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "find a single creator by external identifer",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          },
          "404": {
            "description": "no such creator",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/creator/{id}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch a single creator by id",
            "schema": {
              "$ref": "#/definitions/creator_entity"
            }
          },
          "404": {
            "description": "no such creator",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editgroup": {
      "post": {
        "responses": {
          "201": {
            "description": "successfully created",
            "schema": {
              "$ref": "#/definitions/editgroup"
            }
          },
          "400": {
            "description": "invalid request parameters",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      }
    },
    "/editgroup/{id}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch editgroup by identifier",
            "schema": {
              "$ref": "#/definitions/editgroup"
            }
          },
          "404": {
            "description": "no such editgroup",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "integer",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editgroup/{id}/accept": {
      "post": {
        "responses": {
          "200": {
            "description": "merged editgroup successfully (\"live\")",
            "schema": {
              "$ref": "#/definitions/success"
            }
          },
          "400": {
            "description": "editgroup is in an unmergable state",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "404": {
            "description": "no such editgroup",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "integer",
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editor/{username}": {
      "get": {
        "responses": {
          "200": {
            "description": "fetch generic information about an editor",
            "schema": {
              "$ref": "#/definitions/editor"
            }
          },
          "404": {
            "description": "username not found",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "username",
          "in": "path",
          "required": true
        }
      ]
    },
    "/editor/{username}/changelog": {
      "get": {
        "responses": {
          "200": {
            "description": "find changes (editgroups) by this editor which have been merged",
            "schema": {
              "$ref": "#/definitions/changelogentry"
            }
          },
          "404": {
            "description": "username not found",
            "schema": {
              "$ref": "#/definitions/error"
            }
          },
          "default": {
            "description": "generic error response",
            "schema": {
              "$ref": "#/definitions/error"
            }
          }
        }
      },
      "parameters": [
        {
          "type": "string",
          "name": "username",
          "in": "path",
          "required": true
        }
      ]
    }
  },
  "definitions": {
    "changelogentry": {
      "type": "object",
      "required": [
        "index"
      ],
      "properties": {
        "editgroup_id": {
          "type": "integer"
        },
        "index": {
          "type": "integer"
        },
        "timestamp": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "creator_entity": {
      "type": "object",
      "properties": {
        "ident": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "orcid": {
          "type": "string"
        },
        "redirect": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        },
        "state": {
          "type": "string",
          "enum": [
            "wip",
            "active",
            "redirect",
            "deleted"
          ]
        }
      }
    },
    "editgroup": {
      "type": "object",
      "required": [
        "id",
        "editor_id"
      ],
      "properties": {
        "editor_id": {
          "type": "integer"
        },
        "id": {
          "type": "integer"
        }
      }
    },
    "editor": {
      "type": "object",
      "required": [
        "username"
      ],
      "properties": {
        "username": {
          "type": "string"
        }
      }
    },
    "entity_edit": {
      "type": "object",
      "properties": {
        "editgroup_id": {
          "type": "integer"
        },
        "id": {
          "type": "integer"
        },
        "ident": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        }
      }
    },
    "error": {
      "type": "object",
      "required": [
        "message"
      ],
      "properties": {
        "message": {
          "type": "string"
        }
      }
    },
    "release_entity": {
      "type": "object",
      "required": [
        "ident",
        "state"
      ],
      "properties": {
        "ident": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "orcid": {
          "type": "string"
        },
        "redirect": {
          "type": "string"
        },
        "revision": {
          "type": "integer"
        },
        "state": {
          "type": "string",
          "enum": [
            "wip",
            "active",
            "redirect",
            "deleted"
          ]
        }
      }
    },
    "success": {
      "type": "object",
      "required": [
        "message"
      ],
      "properties": {
        "message": {
          "type": "string"
        }
      }
    }
  },
  "x-entity-edit-props": {
    "editgroup_id": {
      "type": "integer"
    },
    "id": {
      "type": "integer"
    },
    "ident": {
      "type": "string"
    },
    "revision": {
      "type": "integer"
    }
  },
  "x-entity-props": {
    "ident": {
      "type": "string"
    },
    "redirect": {
      "type": "string"
    },
    "revision": {
      "type": "integer"
    },
    "state": {
      "enum": [
        "wip",
        "active",
        "redirect",
        "deleted"
      ],
      "type": "string"
    }
  }
}`))
}