diff --git a/routers/api/v1/activitypub/repository.go b/routers/api/v1/activitypub/repository.go index 89fb46b40a..2a13510f3c 100644 --- a/routers/api/v1/activitypub/repository.go +++ b/routers/api/v1/activitypub/repository.go @@ -120,7 +120,7 @@ func RepositoryInbox(ctx *context.APIContext) { { user, err = createUserFromAP(ctx, actorId) if err != nil { - ctx.ServerError("Searching for user failed", err) + ctx.ServerError("Creating user failed", err) return } log.Info("RepositoryInbox: created user from ap: %v", user) @@ -195,7 +195,11 @@ func createUserFromAP(ctx *context.APIContext, personId forgefed.PersonId) (*use } log.Info("RepositoryInbox: got body: %v", string(body)) person := ap.Person{} - err = person.UnmarshalJSON(body) + if strings.Contains(string(body), "user does not exist") { + err = fmt.Errorf("the requested user id did not exist on the remote server: %v", personId.Id) + } else { + err = person.UnmarshalJSON(body) + } if err != nil { return &user_model.User{}, err }